CISC455 学习笔记 1-IntroEC
1: Introduction to Evolutionary Computing 进化计算导论
Positioning of Evolutionary Computation进化计算的定位
- EC is part of computer science - computational intelligence - bio-inspired computing
EC 是计算机科学的一部分,属于计算智能(computational intelligence),也属于受生物启发的计算(bio-inspired computing)
- Biology delivered inspiration and terminology
生物学为 EC 提供了灵感和术语。
- EC can be used as a tool for biological research
EC 也可以作为生物学研究的工具。
4.Systematic trial-and-error (generate-and-test)
problem solving
系统化的试错式(生成并测试)问题求解方法。
Motivation and Inspiration for EC
Motivation
1.Solve complex problems (NP-hard, multimodal, noisy, dynamic, multi-objective)
解决复杂问题(NP难、多模态、带噪声、动态、多目标)
2.Develop automatic problem solvers
开发自动问题求解器
3.Need for robust algorithms that are applicable to a wide range of similar problems, without much tailoring for specific problem settings
需要能够应用于广泛类似问题的 鲁棒 算法,而无需针对特定问题场景进行大量调整
4.Simulate natural evolution
模拟自然演化
Engineer evolution自然进化的机制工程化
| EVOLUTION | PROBLEM SOLVING |
|---|---|
| Environment环境 | Problem问题 |
| Individual个体 | Candidate Solution候选解 |
| Fitness适应度 | Quality 解的质量 |
Fitness :chances for survival and reproduction生存和繁殖的机会
Ingredients of evolution
进化所需要的几个基本要素

Natural evolution -> evolutionary algorithms(EA)
从自然进化到进化算法
| Natural evolution | evolutionary algorithms |
|---|---|
| Population种群 | Population种群 |
| Heredity遗传 | Representation编码方式 |
| Variation operators变异算子/产生变化的操作 | |
| Variation变异 / 差异 | Variation operators |
| Differential reproduction差异性繁殖 | Evaluation 评估 |
| Selection选择 | |
| Replacement替换 |
Evolutionary algorithm

History

Evolutionary AI(进化式人工智能)
-
Creative 有创造性
-
Adaptive 能够适应变化
-
Diversity 多样性
Problem categorization问题类型

Consists of three components由三个部分组成
Different problems for different unknown components 当未知的部分不同,就会形成不同类型的问题
Problem type 1: Optimization 优化问题
We have a model of our system and seek inputs that give us a specified goal
我们已经有一个系统模型,我们要找到一个合适的 Input,让系统产生我们想要的 Output

Examples
- Time tables for university, call center, or hospital 大学、呼叫中心或医院的时刻表
- Traveling salesman problem (TSP)旅行推销员问题
- Knapsack problem背包问题
优化是在找:哪一个 Input 能产生最好的 Output
Problem type 2: Modeling 建模
We have corresponding sets of inputs and outputs and seek model that delivers correct output for every known input
我们有一组相应的输入和输出,并寻求一个模型,该模型能针对每个已知的输入给出正确的输出

Examples
- Classification of data, handwriting recognition数据分类、手写识别
- Predicting stock exchange price development预测股票价格走势
- Voice-control system for smart phone智能手机语音控制系统
Problem type 3: Simulation 模拟
We have a given model and wish to know the outputs that arise under different input conditions
我们已经有一个给定的模型,并希望知道在不同输入条件下会产生什么输出
Often used to answer “what-if” questions in evolving dynamic environments
模拟经常用于回答动态变化环境中的“如果……会怎样?”问题

Examples:
- Evolutionary economics进化经济学
- Artificial life人工生命
- Impact analysis of a new tax system新税制的影响分析
Search
-
Solving an optimization or a modeling problem requires the identification of a particular object in a space of possibilities
解决一个optimization优化问题或者modeling建模问题,需要在一组可能性构成的空间中,找出一个特定的对象
-
This space can be, and usually is, enormous or even infinite
这个空间可能非常巨大,而且通常确实非常巨大,甚至可能是无限的
-
Problem solving -> search
问题求解 → 搜索
-
Search space: the collection of all objects of interest including the solution we are seeking
Search space(搜索空间):所有我们感兴趣的对象所组成的集合,其中也包含我们正在寻找的那个解
Optimization vs. constraint satisfaction优化问题 vs. 约束满足问题
-
Objective function: assigning a value to a solution that reflects its quality
Objective function目标函数:给一个 solution 分配一个数值,用这个数值反映这个 solution 的质量。
用来回答这个解有多好
-
Constraint: binary evaluation whether a given requirement holds or not
约束:二元地判断某个要求是否满足。
binary evaluation(二元地判断):True / False
Constraints Objective function: Yes Objective function: No Yes Constrained optimization problem带约束的优化问题 Constraint satisfaction problem约束满足问题 No Free optimization problem无约束优化问题 No problem
What does an EA need to solve a problem?一个进化算法(EA, Evolutionary Algorithm)要解决问题,需要哪些东西
-
A representation of candidate solutions
一种表示候选解的方法。
-
A way to generate candidates
一种产生候选解的方法。
-
A way to evaluate them
一种评价这些候选解的方法
-
A way to select among them
一种从这些候选解中进行选择的方法。
-
A way to handle constraints
一种处理约束的方法
Questions we should be able to answer now
现在我们应该已经能够回答的问题
- What is evolutionary computing? 什么是进化计算?
Answer 答案
Evolutionary Computing (EC) is a class of computational methods inspired by natural evolution. It uses a population of candidate solutions and repeatedly applies evaluation, selection, and variation to improve the solutions.进化计算(EC)是一类受到自然进化启发的计算方法。它使用一组候选解,并不断进行评价、选择和变异,从而逐步改进这些解。
- Why use it? 为什么要使用进化计算?
Answer 答案
Evolutionary Computing is useful for solving complex problems, especially when the search space is very large, difficult, noisy, dynamic, multimodal, or multi-objective.进化计算适合用于解决复杂问题,特别是当搜索空间非常大,或者问题具有困难、噪声、动态变化、多峰或多目标等特点时。
- What is the basic abstraction? 基本抽象是什么?
Answer 答案
The basic abstraction is:基本抽象是:Input → Model → Output
输入 → 模型 → 输出
Different problem types depend on which component is unknown. For example, optimization searches for the input, while simulation determines the output.
根据哪一个部分是未知的,可以形成不同的问题类型。例如,优化问题寻找合适的输入,而模拟问题是在已知输入和模型的情况下求输出。
- What is an individual in an EA? 在进化算法中,individual 是什么?
Answer / 答案
An individual in an Evolutionary Algorithm is one candidate solution to the problem. A collection of individuals forms a population.在进化算法中,一个 individual 就是问题的一个候选解(candidate solution)。 许多个 individual 组成一个 population(种群)。
- What is fitness? 什么是 fitness?
Answer / 答案
Fitness is a value that represents the quality of a candidate solution.Individuals with better fitness generally have a greater chance of being selected and contributing to future generations.
Fitness 是一个用来表示候选解质量的数值。
Fitness 更好的个体通常有更大的机会被选择,并对之后的世代产生影响。
- Why is search important? 为什么搜索很重要?
Answer / 答案
Search is important because the set of possible candidate solutions, called the search space, can be extremely large or even infinite.Evolutionary Algorithms search this space to find good or optimal solutions without examining every possible solution.
搜索很重要,因为所有可能候选解组成的集合,也就是 search space(搜索空间),可能非常巨大,甚至是无限的。
进化算法通过在这个搜索空间中进行搜索,找到较好的或最优的解,而不需要检查每一个可能的解。