强化学习从基础到进阶-常见问题和面试必知必答[2]:马尔科夫决策、贝尔曼方程、动态规划、策略价值迭代

news2024/11/25 20:43:47

在这里插入图片描述
【强化学习原理+项目专栏】必看系列:单智能体、多智能体算法原理+项目实战、相关技巧(调参、画图等、趣味项目实现、学术应用项目实现

在这里插入图片描述
专栏详细介绍:【强化学习原理+项目专栏】必看系列:单智能体、多智能体算法原理+项目实战、相关技巧(调参、画图等、趣味项目实现、学术应用项目实现

对于深度强化学习这块规划为:

  • 基础单智能算法教学(gym环境为主)
  • 主流多智能算法教学(gym环境为主)
    • 主流算法:DDPG、DQN、TD3、SAC、PPO、RainbowDQN、QLearning、A2C等算法项目实战
  • 一些趣味项目(超级玛丽、下五子棋、斗地主、各种游戏上应用)
  • 单智能多智能题实战(论文复现偏业务如:无人机优化调度、电力资源调度等项目应用)

本专栏主要方便入门同学快速掌握强化学习单智能体|多智能体算法原理+项目实战。后续会持续把深度学习涉及知识原理分析给大家,让大家在项目实操的同时也能知识储备,知其然、知其所以然、知何由以知其所以然。

声明:部分项目为网络经典项目方便大家快速学习,后续会不断增添实战环节(比赛、论文、现实应用等)

  • 专栏订阅(个性化选择):

    • 强化学习原理+项目专栏大合集-《推荐订阅☆☆☆☆☆》

    • 强化学习单智能体算法原理+项目实战《推荐订阅☆☆☆☆》

    • 强化学习多智能体原理+项目实战《推荐订阅☆☆☆☆☆》

    • 强化学习相关技巧(调参、画图等《推荐订阅☆☆☆》)

    • tensorflow_gym-强化学习:免费《推荐订阅☆☆☆☆》

    • 强化学习从基础到进阶-案例与实践:免费《推荐订阅☆☆☆☆☆》

强化学习从基础到进阶-常见问题和面试必知必答[2]:马尔科夫决策、贝尔曼方程、动态规划、策略价值迭代

1.马尔科夫决策核心词汇

  • 马尔可夫性质(Markov property,MP):如果某一个过程未来的状态与过去的状态无关,只由现在的状态决定,那么其具有马尔可夫性质。换句话说,一个状态的下一个状态只取决于它的当前状态,而与它当前状态之前的状态都没有关系。

  • 马尔可夫链(Markov chain): 概率论和数理统计中具有马尔可夫性质且存在于离散的指数集(index set)和状态空间(state space)内的随机过程(stochastic process)。

  • 状态转移矩阵(state transition matrix):状态转移矩阵类似于条件概率(conditional probability),其表示当智能体到达某状态后,到达其他所有状态的概率。矩阵的每一行描述的是从某节点到达所有其他节点的概率。

  • 马尔可夫奖励过程(Markov reward process,MRP): 本质是马尔可夫链加上一个奖励函数。在马尔可夫奖励过程中,状态转移矩阵和它的状态都与马尔可夫链的一样,只多了一个奖励函数。奖励函数是一个期望,即在某一个状态可以获得多大的奖励。

  • 范围(horizon):定义了同一个回合(episode)或者一个完整轨迹的长度,它是由有限个步数决定的。

  • 回报(return):把奖励进行折扣(discounted),然后获得的对应的奖励。

  • 贝尔曼方程(Bellman equation):其定义了当前状态与未来状态的迭代关系,表示当前状态的价值函数可以通过下个状态的价值函数来计算。贝尔曼方程因其提出者、动态规划创始人理查德 ⋅ \cdot 贝尔曼(Richard Bellman)而得名,同时也被叫作“动态规划方程”。贝尔曼方程即 V ( s ) = R ( s ) + γ ∑ s ′ ∈ S P ( s ′ ∣ s ) V ( s ′ ) V(s)=R(s)+ \gamma \sum_{s' \in S}P(s'|s)V(s') V(s)=R(s)+γsSP(ss)V(s) ,特别地,其矩阵形式为 V = R + γ P V \mathrm{V}=\mathrm{R}+\gamma \mathrm{PV} V=R+γPV

  • 蒙特卡洛算法(Monte Carlo algorithm,MC algorithm): 可用来计算价值函数的值。使用本节中小船的例子,当得到一个马尔可夫奖励过程后,我们可以从某一个状态开始,把小船放到水中,让它随波流动,这样就会产生一个轨迹,从而得到一个折扣后的奖励 g g g 。当积累该奖励到一定数量后,用它直接除以轨迹数量,就会得到其价值函数的值。

  • 动态规划算法(dynamic programming,DP): 其可用来计算价值函数的值。通过一直迭代对应的贝尔曼方程,最后使其收敛。当最后更新的状态与上一个状态差距不大的时候,动态规划算法的更新就可以停止。

  • Q函数(Q-function): 其定义的是某一个状态和某一个动作所对应的有可能得到的回报的期望。

  • 马尔可夫决策过程中的预测问题:即策略评估问题,给定一个马尔可夫决策过程以及一个策略 π \pi π ,计算它的策略函数,即每个状态的价值函数值是多少。其可以通过动态规划算法解决。

  • 马尔可夫决策过程中的控制问题:即寻找一个最佳策略,其输入是马尔可夫决策过程,输出是最佳价值函数(optimal value function)以及最佳策略(optimal policy)。其可以通过动态规划算法解决。

  • 最佳价值函数:搜索一种策略 π \pi π ,使每个状态的价值最大, V ∗ V^* V 就是到达每一个状态的极大值。在极大值中,我们得到的策略是最佳策略。最佳策略使得每个状态的价值函数都取得最大值。所以当我们说某一个马尔可夫决策过程的环境可解时,其实就是我们可以得到一个最佳价值函数。

在这里插入图片描述

2.常见问题汇总

2.1为什么在马尔可夫奖励过程中需要有折扣因子?

(1)首先,是有些马尔可夫过程是环状的,它并没有终点,所以我们想避免无穷的奖励。

(2)另外,我们想把不确定性也表示出来,希望尽可能快地得到奖励,而不是在未来的某个时刻得到奖励。

(3)接上一点,如果这个奖励是有实际价值的,我们可能更希望立刻就得到奖励,而不是后面才可以得到奖励。

(4)还有,在有些时候,折扣因子也可以设为0。当它被设为0后,我们就只关注它当前的奖励。我们也可以把它设为1,设为1表示未来获得的奖励与当前获得的奖励是一样的。

所以,折扣因子可以作为强化学习智能体的一个超参数进行调整,然后就会得到不同行为的智能体。

2.2 为什么矩阵形式的贝尔曼方程的解析解比较难求得?

通过矩阵求逆的过程,我们就可以把 V V V 的解析解求出来。但是这个矩阵求逆的过程的复杂度是 O ( N 3 ) O(N^3) O(N3) ,所以当状态非常多的时候,比如从10个状态到1000个状态,到100万个状态,那么当我们有100万个状态的时候,转移矩阵就会是一个100万乘100万的矩阵。对于这样一个大矩阵进行求逆是非常困难的,所以这种通过解析解去解的方法,只能应用在很小量的马尔可夫奖励过程中。

2.3 计算贝尔曼方程的常见方法有哪些,它们有什么区别?

(1)蒙特卡洛方法:可用来计算价值函数的值。以本书中的小船示例为例,当得到一个马尔可夫奖励过程后,我们可以从某一个状态开始,把小船放到水中,让它“随波逐流”,这样就会产生一条轨迹,从而得到一个折扣后的奖励 g g g 。当积累该奖励到一定数量后,直接除以轨迹数量,就会得到其价值函数的值。

(2)动态规划方法:可用来计算价值函数的值。通过一直迭代对应的贝尔曼方程,最后使其收敛。当最后更新的状态与上一个状态区别不大的时候,通常是小于一个阈值 γ \gamma γ 时,更新就可以停止。

(3)以上两者的结合方法:我们也可以使用时序差分学习方法,其为动态规划方法和蒙特卡洛方法的结合。

2.4 马尔可夫奖励过程与马尔可夫决策过程的区别是什么?

相对于马尔可夫奖励过程,马尔可夫决策过程多了一个决策过程,其他的定义与马尔可夫奖励过程是类似的。由于多了一个决策,多了一个动作,因此状态转移也多了一个条件,即执行一个动作,导致未来状态的变化,其不仅依赖于当前的状态,也依赖于在当前状态下智能体采取的动作决定的状态变化。对于价值函数,它也多了一个条件,多了一个当前的动作,即当前状态以及采取的动作会决定当前可能得到的奖励的多少。

另外,两者之间是有转换关系的。具体来说,已知一个马尔可夫决策过程以及一个策略 π \pi π 时,我们可以把马尔可夫决策过程转换成马尔可夫奖励过程。在马尔可夫决策过程中,状态的转移函数 P ( s ′ ∣ s , a ) P(s'|s,a) P(ss,a) 是基于它的当前状态和当前动作的,因为我们现在已知策略函数,即在每一个状态,我们知道其采取每一个动作的概率,所以我们就可以直接把这个动作进行加和,就可以得到对于马尔可夫奖励过程的一个转移概率。同样地,对于奖励,我们可以把动作去掉,这样就会得到一个类似于马尔可夫奖励过程的奖励。

2.5 马尔可夫决策过程中的状态转移与马尔可夫奖励过程中的状态转移的结构或者计算方面的差异有哪些?

对于马尔可夫链,它的转移概率是直接决定的,即从当前时刻的状态通过转移概率得到下一时刻的状态值。但是对于马尔可夫决策过程,其中间多了一层动作的输出,即在当前这个状态,首先要决定采取某一种动作,再通过状态转移函数变化到另外一个状态。所以在当前状态与未来状态转移过程中多了一层决策性,这是马尔可夫决策过程与之前的马尔可夫过程的不同之处。在马尔可夫决策过程中,动作是由智能体决定的,所以多了一个组成部分,智能体会采取动作来决定未来的状态转移。

2.6 我们如何寻找最佳策略,寻找最佳策略方法有哪些?

本质来说,当我们取得最佳价值函数后,我们可以通过对Q函数进行最大化,从而得到最佳价值。然后,我们直接对Q函数取一个让动作最大化的值,就可以直接得到其最佳策略。具体方法如下,

(1)穷举法(一般不使用):假设我们有有限个状态、有限个动作可能性,那么每个状态我们可以采取 A A A 种动作策略,那么总共就是 ∣ A ∣ ∣ S ∣ |A|^{|S|} AS 个可能的策略。我们可以把他们穷举一遍,然后算出每种策略的价值函数,对比一下就可以得到最佳策略。但是这种方法的效率极低。

(2)策略迭代: 一种迭代方法,其由两部分组成,以下两个步骤一直在迭代进行,最终收敛,其过程有些类似于机器学习中的EM算法(期望-最大化算法)。第一个步骤是策略评估,即当前我们在优化这个策略 π \pi π ,在优化过程中通过评估从而得到一个更新的策略;第二个步骤是策略提升,即取得价值函数后,进一步推算出它的Q函数,得到它的最大值。

(3)价值迭代: 我们一直迭代贝尔曼最优方程,通过迭代,其能逐渐趋向于最佳策略,这是价值迭代方法的核心。我们为了得到最佳的 V ∗ V^* V ,对于每个状态的 V ∗ V^* V 值,直接使用贝尔曼最优方程进行迭代,迭代多次之后它就会收敛到最佳策略及其对应的状态,这里是没有策略函数的。

在这里插入图片描述

3.面试必知必答

3.1友善的面试官:请问马尔可夫过程是什么?马尔可夫决策过程又是什么?其中马尔可夫最重要的性质是什么呢?

马尔可夫过程是一个二元组 < S , P > <S,P> <S,P> S S S 为状态集合, P P P 为状态转移函数;

马尔可夫决策过程是一个五元组 < S , P , A , R , γ > <S,P,A,R,\gamma> <S,P,A,R,γ>, 其中 R R R 表示从 S S S S ′ S' S 能够获得的奖励期望, γ \gamma γ 为折扣因子, A A A 为动作集合;

马尔可夫最重要的性质是下一个状态只与当前状态有关,与之前的状态无关,也就是 p ( s t + 1 ∣ s t ) = p ( s t + 1 ∣ s 1 , s 2 , . . . , s t ) p(s_{t+1} | s_t)= p(s_{t+1}|s_1,s_2,...,s_t) p(st+1st)=p(st+1s1,s2,...,st)

3.2友善的面试官:请问我们一般怎么求解马尔可夫决策过程?

我们求解马尔可夫决策过程时,可以直接求解贝尔曼方程或动态规划方程:

V ( s ) = R ( S ) + γ ∑ s ′ ∈ S p ( s ′ ∣ s ) V ( s ′ ) V(s)=R(S)+ \gamma \sum_{s' \in S}p(s'|s)V(s') V(s)=R(S)+γsSp(ss)V(s)

特别地,其矩阵形式为 V = R + γ P V \mathrm{V}=\mathrm{R}+\gamma \mathrm{PV} V=R+γPV。但是贝尔曼方程很难求解且计算复杂度较高,所以可以使用动态规划、蒙特卡洛以及时序差分等方法求解。

3.3友善的面试官:请问如果数据流不具备马尔可夫性质怎么办?应该如何处理?

如果不具备马尔可夫性,即下一个状态与之前的状态也有关,若仅用当前的状态来求解决策过程,势必导致决策的泛化能力变差。为了解决这个问题,可以利用循环神经网络对历史信息建模,获得包含历史信息的状态表征,表征过程也可以使用注意力机制等手段,最后在表征状态空间求解马尔可夫决策过程问题。

3.4友善的面试官:请分别写出基于状态价值函数的贝尔曼方程以及基于动作价值函数的贝尔曼方程。

(1)基于状态价值函数的贝尔曼方程: V π ( s ) = ∑ a π ( a ∣ s ) ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r ( s , a ) + γ V π ( s ′ ) ] V_{\pi}(s) = \sum_{a}{\pi(a|s)}\sum_{s',r}{p(s',r|s,a)[r(s,a)+\gamma V_{\pi}(s')]} Vπ(s)=aπ(as)s,rp(s,rs,a)[r(s,a)+γVπ(s)]

(2)基于动作价值函数的贝尔曼方程: Q π ( s , a ) = ∑ s ′ , r p ( s ′ , r ∣ s , a ) [ r ( s ′ , a ) + γ V π ( s ′ ) ] Q_{\pi}(s,a)=\sum_{s',r}p(s',r|s,a)[r(s',a)+\gamma V_{\pi}(s')] Qπ(s,a)=s,rp(s,rs,a)[r(s,a)+γVπ(s)]

3.5 友善的面试官:请问最佳价值函数 V ∗ V^* V 和最佳策略 π ∗ \pi^* π 为什么等价呢?

最佳价值函数的定义为 V ∗ ( s ) = max ⁡ π V π ( s ) V^* (s)=\max_{\pi} V_{\pi}(s) V(s)=maxπVπ(s) ,即我们搜索一种策略 π \pi π 来让每个状态的价值最大。 V ∗ V^* V 就是到达每一个状态其的最大价值,同时我们得到的策略就可以说是最佳策略,即 π ∗ ( s ) = arg ⁡ max ⁡ π   V π ( s ) \pi^{*}(s)=\underset{\pi}{\arg \max }~ V_{\pi}(s) π(s)=πargmax Vπ(s) 。最佳策略使得每个状态的价值函数都取得最大值。所以如果我们可以得到一个最佳价值函数,就可以说某一个马尔可夫决策过程的环境被解。在这种情况下,其最佳价值函数是一致的,即其达到的上限的值是一致的,但这里可能有多个最佳策略对应于相同的最佳价值。

3.6友善的面试官:能不能手写一下第 n n n步的价值函数更新公式呀?另外,当 n n n 越来越大时,价值函数的期望和方差是分别变大还是变小呢?

n n n 越大,方差越大,期望偏差越小。价值函数的更新公式如下:

Q ( S , A ) ← Q ( S , A ) + α [ ∑ i = 1 n γ i − 1 r t + i + γ n max ⁡ a Q ( S ′ , a ) − Q ( S , A ) ] Q\left(S, A\right) \leftarrow Q\left(S, A\right)+\alpha\left[\sum_{i=1}^{n} \gamma^{i-1} r_{t+i}+\gamma^{n} \max _{a} Q\left(S',a\right)-Q\left(S, A\right)\right] Q(S,A)Q(S,A)+α[i=1nγi1rt+i+γnamaxQ(S,a)Q(S,A)]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/666788.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

选择排序 - C语言实现

目录 &#x1f970;前言 ✅选择排序 &#x1f95d;基本思想 &#x1f95d;实现逻辑 &#x1f95d;动图演示 复杂度分析 &#x1f60d;代码实现 &#x1f6a9;优化改进-->二元选择排序 &#x1f60d; 改进代码 前言 &#x1f970;在学数据结构的第一节课就知道了数据结…

02. 青龙面板应用——安装依赖拉取仓库运行京东脚本(保姆级图文)

目录 1. 安装依赖1.1 常用依赖1.2 安装指定依赖 2. 定时规则3. 常用的仓库地址4. 添加订阅5. 运行订阅6. 获取京东手机版cookie7. 在青龙面板中添加京东cookie8. 测试任意一个京东的定时任务总结 欢迎关注 『青龙面板』 专栏&#xff0c;持续更新中 欢迎关注 『青龙面板』 专栏…

Linux基础服务1——Openssh

文章目录 一、基本简介二、登录示例2.1 当前用户登录2.2 指定用户登录 三、ssh主机密钥四、ssh免密登录五、服务端配置文件5.1 连接端口号5.2 限制只能使用普通用户登录5.3 密钥登录 六、SSH安全注意事项 一、基本简介 常见远程登录工具&#xff1a; telnet&#xff0c;认证明文…

Java 获取水库流域并判断雨量站是否在水库流域范围内或附近

获取水库流域并判断雨量站是否在水库流域范围内或附近 准备工作 水库流域区域的geojson文件雨量站的经纬度 工具类 这里有两个方法&#xff1a; isInsideBoundary&#xff1a;判断雨量站是否在流域范围内calculateNearestDistance&#xff1a;计算雨量站和流域边界点最近距…

100种思维模型之马斯洛需求层次理论-81

马斯洛需求层次理论是人本主义科学理论之一&#xff0c;由美国心理学家亚伯拉罕马斯洛在1943年在《人类激励理论》论文中所提出。 文中将人类需求像阶梯一样从低到高按层次分为五种&#xff0c;分别是&#xff1a;生理需求、安全需求、社交需求、尊重需求和自我实现需求。 一、…

如何使用Divi建立会员网站 – 第1部分

欢迎来到这个由 2部分组成的系列的第 1部分&#xff0c;我将在其中向您展示如何通过结合MemberPress和 Divi来构建一个完整的会员网站。我将带您了解如何设置您的会员网站&#xff0c;其中包含销售在线课程或产品所需的一切&#xff0c;包括自定义注册页面、电子邮件通知以及在…

K8S的架构理论概述

一、Kubernetes介绍 1、什么是Kubernetes&#xff1f; 用于自动部署、扩展和管理“容器化( containerized) 应用程序”的开源系统 可以理解成K8S是负责自动化运维管理多个容器化程序(比如Docker)的集群&#xff0c;是–个生态极其丰富的容器编排框架工具 由来&#xff1a; …

打印金字塔图案总结

那么好了好了&#xff0c;宝子们&#xff0c;今天给大家总结一下“打印金字塔图案”&#xff0c;来吧&#xff0c;开始整活&#xff01;⛳️ 最近在牛客网上刷题&#xff0c;遇到了这个打印类型的题目&#xff0c;我想总结一下&#xff0c;然后分享给大家。 一、正向金字塔 …

2023年上半年软考成绩查询时间

23年上半年软考考后成绩查询、分数线、证书领取相关注意事项 一、软考成绩查询时间 软考考试时间分为上半年和下半年&#xff0c;上半年固定是在五月份下半年固定是在十一月份。 成绩查询时间一般在考试时间后的两个月左右根据历年来看&#xff0c; 根据往年成绩查询时间来看…

活动回顾 | 汇聚行业技术大咖,共享思维碰撞时刻,2023 Meet TVM · 北京站圆满落幕

内容一览&#xff1a;「2023 Meet TVM北京站」于 6 月 17 日在中关村车库咖啡顺利举办&#xff0c;现场吸引了来自企业和高校的 150 余名参与者&#xff0c;大家进行了充分热烈的讨论。 关键词&#xff1a;机器学习编译 2023 Meet TVM 本文首发自 HyperAI 超神经微信公众平台~ …

(2023进阶版)vue+h5 通过高德地图(原生) 获取当前位置定位

前言&#xff1a;因为也是用的上一个版本的代码&#xff0c;为了描述清楚所以就直接复制文章来更改了&#xff0c;这一版更加完善简洁&#xff0c;高德地图精确度也更高 (2021年写过的一版上线了挺长时间&#xff0c;2023年突然被应用市场下架&#xff0c;说流程走不通&#xf…

客户的认可,是我们前行中最大的动力

近日&#xff0c;天空卫士连续收到中国联合网络通信集团和海信集团的感谢信。信中对天空卫士的技术支撑能力、资源调配能力和敬业精神提出高度表扬。 全力协助中国联通“供应链安全” 实战演练圆满完成中国联合网络通信集团有限公司发出感谢信&#xff0c;对天空卫士在2023年集…

OpenCV(图像处理)-基于Python-轮廓查找

轮廓查找 1. 轮廓2.轮廓查找2.1 findContours()2.2 drawContours()2.3 contourArea()和arcLength()2.4 多边形逼近与凸包approxPolyDP()convexHull()2.5 外接矩形minAreaRect()boundingRect() 1. 轮廓 一个图像中具有相同颜色或强度&#xff08;灰度图&#xff09;的连续点所组…

jetson-TX2刷机与镜像生成、恢复

目录 1. 系统与SDK烧录 2. tx2系统镜像备份与恢复 1. 系统与SDK烧录 1. 准备一台ubuntu系统的主机&#xff0c;一根安卓数据线&#xff0c;主机需连网&#xff0c;jetson设备无需连网。 2. 宿主机安装sdkmanager&#xff0c;建议安装版本较新一点的。 先下载sdkmanager的安…

C++基础(11)——STL(基本概念和string)

前言 本文主要介绍C中STL基本知识和string类 7.1&#xff1a;初识STL 7.1.1&#xff1a;STL六大组件 算法要通过迭代器来访问容器中的数据 STL的六大组件&#xff1a;容器、算法、迭代器、仿函数、适配器、空间配置器 1.容器&#xff1a;各种数据结构&#xff0c;如vecto…

2.9 epoll的实现原理

目录 一、epoll的数据结构1、epoll的数据结构选择2、epoll数据结构图 二、epoll的线程安全三、epoll的内核回调epoll 回调函数epoll回调时机 四、epoll的用户态接口epoll_createepoll_ctl epoll_wait 五、epoll的LT和ET 在前文已经基于dpdk实现了用户态协议栈&#xff0c;但是有…

编译原理笔记(哈工大编译原理)(及格版)

文章目录 前言概论语言与文法基本概念字母表串字母表与串的联系 文法语言推导和规约句型与句子语言与字母表 文法的分类CFG的分析树 词法分析正则式正则定义有穷自动机&#xff08;FA&#xff09;DFANFAFA之间的等价性 从RE到DFARE转NFANFA确定化&#xff1a;子集法DFA最小化&a…

Vue.js 内部运行机制

在 new Vue() 之后。 Vue 会调用 _init 函数进行初始化,也就是这里的 init 过程,它会初始化生命周期、事件、 props、 methods、 data、 computed 与 watch 等。其中最重要的是通过 Object.defineProperty 设置 setter 与 getter 函数,用来实现「响应式」以及「依赖收集」,…

spring boot 运行报错: 找不到或无法加载主类

原文地址&#xff1a;spring boot 运行报错: 找不到或无法加载主类 - 走看看 一&#xff1a;当在eclipse启动spring boot项目时出现问题&#xff1a; springboot错误: 找不到或无法加载主类 解决办法&#xff1a; 1&#xff0c;通过cmd命令行&#xff0c;进入项目目录进行&am…

Linux5.7 MySQL 高级(进阶) SQL 语句

文章目录 计算机系统5G云计算第四章 LINUX MySQL 高级(进阶) SQL 语句一、高级SQL 语句1&#xff09;SELECT2&#xff09;DISTINCT3&#xff09;WHERE4&#xff09;AND OR5&#xff09;IN6&#xff09;BETWEEN7&#xff09;通配符8&#xff09;LIKE9&#xff09;ORDER BY10&…