The Ohio State University
Dept. Electrical and Computer Engineering
ECE 7858 Intelligent Control
(Current LONG Subtitle: Systems and Control Theory and Engineering for Social, Economic, and Political Systems)
Instructor: Prof. Kevin Passino 416 Dreese Laboratory, firstname.lastname@example.org
Office Hours: Set an appointment via email and/or talk to me before or after class.
Scheduling: This course is offered in Spring semester of even numbered years.
You have a choice! You pick one of the following two textbooks, purchase it, read cover-to-cover this semester, and write a “book report” on it near the end of class (integrating ideas from class and the book). Depending on your interest in the subject matter of this course, with the approval of the instructor, you may propose an alternative textbook/book report; however, the subject matter of the proposed book must be the “social sciences” (psychology, social work, sociology, anthropology, economics, and politics) or one that deals with human groups (e.g., public health). The two books are (links to Amazon.com, one place you may want to purchase them from):
Dale and Smith, Human Behavior and the Social Environment: Social Systems Theory, Allyn and Bacon, 7th Edition, 2013. This book contains a systems-theoretic view of "social work," the profession that focuses on helping individual people and groups of people.
Forsyth, Group Dynamics, 6th Edition, Cengage Learning, 2013. This book covers human groups, using ideas from many fields, a large range of group sizes, and group objectives. The author’s background is “social psychology.”
Of course, the enthusiastic student may want to buy both, and read both for this class. You will notice that there are no mathematical equations in either book, only some diagrams, and words. But, these form some important foundations for human social dynamic systems (of course there are other versions of systems theory for human groups, but these are two key books in the area). I recommend that after finals in Autumn Semester 2013 you buy the book and read it over the Christmas break, before the class starts. That will give you a great head start on understanding many of the ideas covered in the class, in an easy-to-read format.
Relevant Texts (not required):
- Book treating some topics covered in class: Some topics in this course are taught out of the book: K. Passino, Biomimicry for Optimization, Control, and Automation, the web site of which you can go to by clicking here. You do not need to purchase this book for the class.
- Books available for a free download by clicking here:
Three other relevant books that contain some topics covered in class: (i) Stable adaptive/learning control and (ii) swarm stability and optimization, can be seen by clicking here. Book by Bertsekas and Tsitsiklis on parallel and distributed computation (free download).
- Kevin M. Passino and Stephen Yurkovich, Fuzzy Control, Addison Wesley Longman, Menlo Park, CA, 1998 (one approach to specify a controller using only a “mental model” of the process to be controlled).
- Antsaklis P.J., Passino K.M., eds., An Introduction to Intelligent and Autonomous Control, Kluwer Academic Publishers, Norwell, MA, 1993 (very general hierarchical and distributed “autonomous” controllers”).
Pieces of all four of these "relevant texts" will be used in this course to argument the material out of the course textbook(s).
Software for Simulation:
We will be using one or two of the following four packages, depending on your choice:
- Matlab Simulink, Matlab Stateflow (OSU has site license so you have free access to both those packages), and programming in Matlab via .m files.
- Netlogo for agent-based simulation (free download), or the likes.
In some cases I may require the use of one of these packages, but in other cases I will allow you to choose which package you want to develop a simulation in. Some of you already know Simulink and .m files, but the others are probably new to you. Right now, you could download Netlogo and test out some of the "sample models" (run the simulations; it can output a CSV file that Matlab can read for plotting; you should make that work now). Next, make sure you have access to the Matlab products and start reading about them or doing the "demos" or "examples.”
History: The field of intelligent control has evolved significantly over the years as progress on theory, techniques, and applications has been made. Generally, the field largely started out at the individual intelligence level (typically thought to model some aspect of the intelligence of a single human) with fuzzy control, neural networks, planning systems, attentional systems, and with a heavy focus on learning methods for all of those. Evolutionary methods (i.e., the genetic algorithm) have been used for design of all these individual intelligent systems (and groups of such systems). Significant work has been done on stability analysis of such intelligent controllers when used in closed-loop feedback control (especially for adaptive fuzzy/neural control). While all that work was occurring there was an undercurrent of work on "hierarchical intelligent autonomous controllers" (very general compositions of the above intelligent systems, including distributed ones). But, as the understanding of the "biomimicry" of individual intelligence-focused methods matured, there was a shift to distributed intelligent systems and control, especially ones that were more tractable than the original hierarchical intelligent control methods, with corresponding applications (e.g., autonomous robot groups). Driven by the spread of networks and parallel and distributed computing ideas, methods shifted to “multi-agent” systems, game-theoretic approaches, swarms, and biomimicry of groups of animals. This course continues along these lines, but advancing to a focus on groups of humans interacting socially.
The course will involve (i) gaining an understanding of the functional operation of a variety of intelligent control techniques and their bio-psycho-social foundations, (ii) gaining an understanding of the modeling and operation of parallel and distributed algorithms over networks, (iii) the study of system and control-theoretic foundations (e.g., stability analysis), and (iv) use of the computer for simulation and evaluation. The objective will be to gain a "hands-on" working knowledge of basic ideas and techniques for modeling, analysis, and design of social, economic, and political systems. There are many technology applications of the ideas (e.g., to multi-agent systems), but the focus is not applications to technological systems, but the design, development, and use of embedded distributed technologies for control of complex social, economic, and political systems (i.e., control systems design).
Applications to Interacting Groups of Technologies: There are many applications of the ideas from this class to technology including: groups of autonomous / semi-autonomous robots/vehicles (land, water, air), groups of computers interacting over a wired or wireless network, distributed feedback control (e.g., with applications to temperature control, arrays of smart lights, and the smart grid), multi-agent systems (e.g., software), flexible manufacturing systems, etc. If you are interested in such applications you should view this class as a theoretical biomimicry foundation for such methods (for more details on how to transfer ideas from this class to such applications see the publications at Passino’s web site given above).
Flexibility: Mathematical and Computational Tracks
There is significant flexibility embedded in this course, such as choice of your textbook (see above) and final project (with permission of instructor) as it is explained below. Expectations will also be flexible. Some students may only do simulation for this course (at a minimum, simulation is required in the class, e.g., via Matlab/Netlogo); I call this the “computational track”. Others, such as PhD students in engineering doing research in the area, will be required to understand the underlying mathematics, including proofs; I call this the “mathematical track.” Overall, however, the expectations will be balanced to keep the work load roughly the same for all students (e.g., understanding a proof of convergence of social allocation or social motion is generally more difficult than simulating it, though not always). Otherwise, grading would not be fair.
Outline (topics not in order covered):
- Individal intelligence (before/outside class, covering on your own): From above "biomimicry" book: Neural networks, fuzzy control, planning systems, attentional systems, learning systems (e.g., adaptive neural/fuzzy control/estimation), evolution/genetic algorithms.
- Class: Overview of key systems and control theoretic and engineering ideas. Discussion of the N=2 group, a counselor and a client and its relation to planning systems.
- Homework 1: Do one of the following: (i) fuzzy control (Fuzzy Control book above, problems E-2.10 and DP-2.1); or (ii) Read/critique: Passino K.M., Antsaklis P.J., "A System and Control Theoretic Perspective on Artificial Intelligence Planning Systems", Int. Journal of Applied Artificial Intelligence, Vol. 3, pp. 1-32, 1989.
- Social motion and agreement: Collective/coordinated motion, modeling and stability analysis of swarms (ODE based), distributed agreement/choice and distributed synchronization, human preference/opinion (cognitive variables) vector allignment in human social processes.
- Class: (i) Movies of flocks, schools, swarms. Overview of experiments and mechanisms for guidance and cohesion in honeybee swarms from: Schultz K.M., Passino K.M., Seeley T.D., "The Mechanism of Flight Guidance in Honeybee Swarms: Subtle Guides or Streaker Bees?," Journal of Experimental Biology, Vol. 211, pp. 3287-3295, 2008. Simulink tutorial on dyanaimcs and feedback. Modeling and stability analysis of swarms (ODE based) via the paper: Yanfei Liu and Kevin M. Passino, Stable Social Foraging Swarms in a Noisy Environment, IEEE Trans. on Automatic Control, Vol. 49, No. 1, pp. 30-44, Jan. 2004. First, cover agent model, interactions, noise, profile. Simulate N=2 case. Show how to simulate general N case.
- Project 1: Swarm simulation for general case (all features) for N=2 and N=10 cases. Vary all parameters individually to illustrate impacts on swarm behavior (e.g., increase repulsion gain and show it will keep agents farther apart, generally).
- Class: (i) Cover theory from Liu/Passino paper. Uniform boundedness, uniform ultimate boundedness, identical agent case, trajectory-following case, simulations (group/individual profile tracking in presence of noise); (ii) discuss relations to textbooks on group formation, the choice of whether to join a group, and group cohesiveness; (iii) Application to distributed agreement: political elections problem formulation (candidate positions on topics, voter preferences/positions on topics, liberals/conservatives/moderates, inter-voter persuasion, etc.), model, simulation, and analysis of voter behavior and candidate choice. Extensions such as candidate voter capture strategies.
- Project 2: Due Tues. March 4, in class: (i) Simulation of political elections problem (cognitive variables case), case of two cogntitive variables, n=2 (e.g., "positions" on two different policies), N=10 voters, choice of nonlinear interactions, adjustment of parameters, and effects on candidate choice for the case of two candidates. You may start by modifying your simulation for Project 1. (ii) Complete your reading about "role theory and dynamic"s in your textbook (it is in both books) to prepare for classroom discussion on modeling and analysis for this case.
- Class: (i) Overview key concepts from other papers on swarms here (just search on the word "swarm" to see which papers); (ii) Cover model from: Liu Yanfei, Passino Kevin M., "Cohesive Behaviors of Multiagent Systems with Information Flow Constraints", IEEE Trans. on Automatic Control, Vol. 51, No. 11, pp. 1734-1748, Nov. 2006. Discuss relations to distributed agreement and simulation strategies. (iii) Application: Social Partying, lecture by Prof. John Clapp (CSW), model and simulation results (Felipe Giraldo) (two tightly communicating gender groups, one male-female pair frequently communicating, trying to choose what location to go to next, with tendencies to stay together vs. subgroups wanting to go to different places).
- Midterm Project (note due dates of both March 4 and 18): (i) Due March 18, class: Model and simulate social partying scenario using "cohesive behaviors" paper (investigate effects of topology, delays, noise, attract-repel gain patterns); (ii) Due March 4, class: Read and summarize role theory and dynamics from your textbook; and (iii) Due March 18, class: Read and summarize: Seeley T.D., Visscher P.K., Passino K.M., "Group Decision Making in Honey Bee Swarms," American Scientist, Vol. 94, Issue 3, pp. 220-229, May/June, 2006 and Seeley, T.D., P.K. Visscher, T. Schlegel, P.M. Hogan, N.R. Franks, and J.A.R.Marshall. Stop signals provide cross inhibition in collective decision-making by honey bee swarms. Science 335:108-111.
- Class: Cover (i) theory from Liu/Passino (cohesive), (ii) application to distributed syncrhonization in simulation as seen in the paper, (iii) discussion on impacts on modeling and analysis for the swarm motion, political elections, and social partying applications, (iv) role theory and dynamics (from both textbooks): how can we model and analyze it, an open discussion; and (v) distributed gradient optimization (Veronica Badescu). Connections to swarms and agreement.
- Social choice: Nest-site selection by honeybees, "swarm cognition," connections between group choice and individual/neural level choice.
- Class: Honeybee nest-site selection mathematical/computational model, noise on option assessments, low information flow, speed-accuracy trade-off, from: Passino K.M., Seeley T.D., "Modeling and Analysis of Nest-Site Selection by Honey Bee Swarms: The Speed and Accuracy Trade-off", Behavioral Ecology and Sociobiology, Vol. 59, No. 3, pp. 427-442, Jan. 2006.; Swarm cognition overview from the paper: Passino K.M., Seeley T.D., Visscher P.K., "Swarm Cognition in Honey Bees," Behavioral Ecology and Sociobiology, Vol. 62, No. 3, pp. 401-414, Jan. 2008.
- Homework 3 (due Tues. April 1): Summarize and critique: (i) Passino K.M., Seeley T.D., Visscher P.K., "Swarm Cognition in Honey Bees," Behavioral Ecology and Sociobiology, Vol. 62, No. 3, pp. 401-414, Jan. 2008; and (ii) Computational analysis of results of giving psychological tests to groups making choices via paper: Passino, K.M., "Honey Bee Swarm Cognition: Decision-Making Performance and Adaptation," Int. J. Swarm Intelligence Research, Vol. 1, No. 2, pp. 80-97, April-June 2010.
- Final Project (due April 29, 5pm, put in Prof Passino's mailbox in Rm. 205 Dreese Labs): Connections to neuroscience/psychology models of choice: See Carmen to get papers by Usher/McClelland and Roe/Busemeyer/Townsend. Read, then summarize the two papers in less than one typed page each. Critique the papers (say what is good and what is bad, such as what they are ignoring in their models) in less than one additional page each. Open-ended challenge problems: For each paper demonstrate via simulations and/or mathematical analysis that you fully understand the main points of the paper. Consider the value of including Monte Carlo simulations. Grading: Your solution will be graded relative to the the best solution in the class. No discussions with other students are allowed.
- Book Report: (Due April 29, 5pm, put in Prof Passino's mailbox in Rm. 205 Dreese Labs, with your final project). Summarize main points from your chosen textbook (<3 pages) and explain how the ideas from the class connect to the main points of the book (<2 pages).
- Social allocation: Load balancing in computer networks, distributive justice (regressive/progressive taxation, etc.), Social foraging by honeybees. The "ideal free distribution."
- Class: Load balancing modeling and analysis via paper: Burgess K.L., Passino K.M., "Stability Analysis of Load Balancing Systems", Int. Journal of Control, Vol. 61, No. 2, pp. 357-393, February 1995. (for more details, see: Kevin M. Passino and Kevin L. Burgess, Stability Analysis
of Discrete Event Systems, John Wiley and Sons, NY, 1998). Modeling distributive justice systems and emergent distributions.
- Homework 4 (Due Tues. April 8): Read and critique the paper, K.M. Passino and T.D. Seeley, "The Collective Intelligence of Honey Bee Colonies Produces an Ideal Free Distribution of Foragers Among Nectar Sources," unpublished manuscript, a work in progress, 2014 (available at Carmen).
- Project 3 (Due Thurs. April 10): Read and critique survey paper on distributive justice (see Carmen). Simulation of different notions of distributive justice for a community using a "load balancing model": Suppose nodes represent people, buffers hold their money (their bank or pocket), and links represent the connectedness between people for sensing and transfers of money. Choose two concepts of distributive justice from the survey paper and simulate them for the case of N=5 people, and a topology that is a "line." Perform a comparative computational analysis of the two concepts of distributive justice, and be sure to illustrate points made in the survey paper about characteristics of the distributive approach as appropriate (e.g., how "fair" the strategy is). It would be best if you considered average behavior of the approach via Monte Carlo simulations.
- Class: Ideal free distribution: (i) Differential equation model, evolutionary game-theoretic, stability, and optimization perspectives: Quijano N., Passino K.M., "The Ideal Free Distribution: Theory and Engineering Application," IEEE Trans. on Systems, Man, and Cybernetics, Vol. 37, No. 1, pp. 154-165, Feb. 2007. (ii) Nonlinear stochastic discrete time models, topology/low-information case, emergence, stability perspective: Finke J. and Passino K.M., "Local Agent Requirements for Stable Emergent Group Distributions," IEEE Trans. Automatic Control, Vol. 56, No. 6, pp. 1426-1431, June 2011.
- Homework 5 (Due Thurs April 17): Simulation of achievement of an ideal free distribution: Consider the case of N=3 habitats. Simulate either (your choice) the ODE approach (Quijano) or distributed computing approach (Finke) and demonstrate achievement of the IFD, and how perturbations off the IFD result in returning to the IFD (stability). Read and critique one of the following two papers: (i) Finke J., Quijano N., Passino K.M., "Emergence of Scale Free Networks from Ideal Free Distributions," Europhysics Letters, Vol. 82, 28004 (6 pages), April 2008. (ii) Quijano, Nicanor, Passsino, Kevin M., "Honey Bee Social Foraging Algorithms for Resource Allocation: Theory and Application," Engineering Applications of Artificial Intelligence, Vol. 23, pp. 845-861, 2010.
- Social systems theory and group dynamics (integrated throughout the class): individual, family, groups, organizations, communities (from textbooks); to be integrated into the above subjects.
- Optional class subjects (depending on time) and/or assigned final projects depending on student interest to be studied independently: Biological optimization (e.g., bacteria), more on distributed synchronization, game theory introduction, evolutionary game theory/evolutionary dynamics/replicator dynamics (ODE model), cooperative task processing, cooperative scheduling, distributed assignment, auctions, competitive and intelligent foraging, regulation (for honeybees, temperature and pollen stores).
Grading: Homeworks, projects, midterm, book report (on your chosen textbook), and a final project.
Prerequisites: If you take the “computational track” all that is required is a willingness to work hard. For the “mathematical track” you need much more background (e.g., 3551, 5551, 5750, 5754) depending on the type of math track you take. I will be meeting individually with math track students to assign mathematical proofs that must be completed.
- Graduate standing is required by the numbering of the course per OSU policy
- ECE 3551 (or equivalent course on classical feedback control where in a Laplace-transform framework, PID control, root locus design, tracking, and disturbance rejection are covered) is recommended
- ECE 5551 Discrete-time state space (state feedback, controllability, observability, Kalman filter) or an equivalent course
- EE 5750 Linear Systems
- EE 5754 Nonlinear Control Systems
- EE 5759 Optimization is useful