基于人工智能的计算机应用软件开发技术应用分析
2022-01-01冯景利
冯景利
(宝鸡职业技术学院 陕西 宝鸡 721000)
0 引言
随着信息技术的不断发展,计算机应用软件的开发成为信息技术得以应用的关键环节。人工智能技术在计算机应用软件开发的过程中起到了极其重要的作用,人工智能技术的应用提高了计算机应用软件开发的水平。通过人工智能技术可以有效地优化计算机应用软件的智能功能,使计算机软件用户可以得到更加便捷和完善的软件服务。因此在开发计算机应用软件时,必须重视人工智能技术的应用[1]。现阶段由于人工智能技术的存在,其拓展了计算机应用软件的发展空间。根据基于人工智能技术的计算机应用软件开发基本原理,计算机应用软件可以拥有更加丰富的功能,为用户提供更好的使用体验。因此为了进一步提高计算机应用软件开发的技术水平,持续为计算机应用软件用户提供更好的使用体验,就需要对基于人工智能的计算机应用软件开发技术进行应用分析。
1 人工智能和计算机应用软件开发概述
1.1 人工智能技术的主要行为
当前随着科技发展和人工智能的广泛应用,其应用于博弈论和战略规划、媒体、图像处理、金融的传统领域中。随着相关技术的不断发展,人工智能技术在机器人、自然语言处理、医学诊断和量子科学等领域也有了大量的应用。人工智能技术的主要行为方式包括以下几种。
1.1.1 智能代理
智能代理是一种帮助人们执行某项任务的软件。智能代理允许人们将他们的工作移交给代理软件。代理可以执行重复的任务,储存用户遗忘的信息,智能地总结复杂的数据,向使用者学习,并向使用者提供建议。
1.1.2 机器学习
机器学习使计算机有能力在没有明确编程的情况下进行学习,机器学习已经应用于自动驾驶汽车,有效的网络搜索,实际的语音识别,并提高了对人类基因组的了解。机器学习在日常生活中非常普遍,但是用户在使用的过程中几乎没有感知到机器僧体系的存在。部分研究显示通过良好的机器学习,相关软件甚至可以展示与人类行为同等水平的人工智能。
1.1.3 知识表达
知识表达的主要内容是分析人们如何解决问题,并对此进行总结形成知识体系,并利用形成的知识体系以一种较为简单的方式去解决相对复杂的问题。知识推理与表达还涉及从逻辑思维到计算机语言之间的几种逻辑关系,如规则地应用或集与子集的关系。
1.1.4 数据建模
数据建模代表一套从大量数据中计算和生成某些特征数据的方法。一个科学的数据模型可以以非常理想化的形式表示某些特征数据的生成过程。数据模型可以从一组概率分布中,提取一些被认为能够充分逼近特征数据的取样分布。
1.1.5 搜索和优化
搜索的目的是找到一种可以实现很高的成本效益的选择,并在给定的限制条件下实现较高的效率,最大限度地发挥必要因素,最小限度地减少不必要的因素。这里的最大化是指不计代价地获得最大化的结果。而优化过程则是在受到信息缺失和估计可用信息不足的限制下,进行最佳的选择。在一些商业问题的计算机建模中,进行优化的方式一般是运筹学中的线性规划技术。
1.1.6 概率方法
概率方法是证明具有特定特征的组合对象有效性的重要技术。其是基于概率论的,并可以用来证明某些不被经常使用的定理。
1.1.7 图灵测试
图灵测试是由阿兰图灵在1950年开发的,其是为了测试一台机器的能力,以显示相当于人类的智能行为。图灵测试的基本方法就是人类评估员利用自然语言对话来评估人类与机器之间的反应差别。
1.1.8 模糊逻辑
模糊逻辑是一种分析控制系统,可在嵌入式微控制器、网络多通道计算机或基于工作点的数据采集和控制系统等系统中实现。它可以分别或同时使用在硬件和软件上[2]。模糊逻辑提供了一种根据不清晰或缺失的输入信息进行准确决策的简单方法。
1.2 基于人工智能的计算机应用软件开发技术的基本特点
基于人工智能的计算机应用软件开发技术的基本特点有以下几个:首先就是计算机应用软件开发技术的可操作性。开发计算机应用软件旨在满足软件用户对软件的需求。因此,计算机软件开发的效果要与用户的使用需求相一致,也就是说,满足用户需求的计算机软件开发设计是一种具有一定可操作性的设计。在计算机软件开发过程中,要有多样化的技术手段和丰富的技术结构。在选择实际技术时,还需要提前了解用户群体的特点。此外,在保证技术应用规范的前提下,最好进行相应的用户群体调查。而人工智能技术的应用可以确保开发的计算机应用软件能够为用户所用,给用户带来良好的使用体验[3]。
其次就是计算机应用软件开发技术的易于维护性。开发计算机应用软件需要很长时间,开发完成后也需要经过很长时间的使用,所以计算机应用软件需要定期维护,以保证其运行速度和效率。为此,在开发计算机应用软件时,必须保证软件维护的简便性,降低软件维护的成本。在软件维护设计中,应用人工智能技术可以有效地降低软件维护的难度,对软件中存在的问题进行信息跟踪、分析和自动修复,使软件长期处于良好运行状态。如果不注意软件维护的简便性,很容易导致软件后期用户使用体验的下降,甚至造成软件用户的损失[4]。
1.3 人工智能技术在计算机应用软件开发中的应用路径
人工智能技术在计算机应用软件开发中的应用,首先就是人工智能神经网络技术在计算机软件开发中的应用。人工智能神经网络技术的结构实质是对人脑神经结构的模拟。神经网络技术作为一种大型并行分布处理技术,其包括多个相互独立又相互协作的信息处理单元模块。在接到计算机命令后,神经网络技术可以快速工作,配合完整的指令,不仅运行速度很快,而且完成效果很理想。同时,人工智能神经网络还可以存储信息,甚至处理和组织信息,以满足各种不同信息处理的需求。另外,神经网络技术结构具有一定的保护功能,既能保证信息安全,又能准确识别网络安全威胁,在计算机软件运行过程中,如果出现入侵信息,也能快速检测和截获。因此,在开发计算机软件时,应将循环网络技术与多层感知器技术相结合,以提高神经网络的检测速度和准确性。
其次,人工智能技术在计算机应用软件开发中的应用就是人工智能代理技术在计算机软件开发中的应用。在人工智能技术领域,人工智能代理技术是一种能够随时随地感知软件环境,并能根据周围环境自动执行任务、进行调整和发挥功能的技术,因此人工智能代理技术是一项应用广泛的技术,特别是在计算机软件安全防御系统中。经过多年的研究和探索,人工智能代理技术已经逐渐成熟,能够比过去更准确地感知互联网环境,有效地配置网络空间。在信息爆炸的时代,网络安全已经成为互联网应用的重中之重,人工智能代理技术的优化和应用显得尤为重要。人工智能代理技术还可以实现及时感知网络安全威胁、自动开启网络保护等功能[5]。
2 人工智能技术在计算机应用软件开发中的具体应用
2.1 计算机应用软件开发中的瀑布模型
瀑布模型是在19世纪70年代被提出,并将其应用于计算机应用软件的开发过程。经过多年的发展,对于瀑布模型在软件开发中的应用水平已经获得了显著的提高,因此瀑布模型是计算机应用软件开发领域的一次技术革命。在信息技术发展和应用的过程中,应用软件的开发被认为是极其复杂的,并且是针对用户需求进行量身定制的,因此其有一定的特殊性。当软件开发过程中出现缺陷时,就会出现应用软件难以实现其作用的情况。在瀑布模型中,沟通、规划、建模和部署是其重要的开发环节。此外,瀑布模型以系统开发生命周期阶段的形式进行不断的优化迭代。瀑布模型在软件开发过程中存在许多优势,其中一个就是在阶段开发周期加强了控制。在软件开发的某一个阶段一定会有一个开始和结束,这允许软件工程师和用户设定目标,以此作为一个重要的目标进行发展。由于需求和设计是在代码执行之前定义的,应用的工作量和时间将被最小化,以此来避免开发进程与时间表之间的背离。
另外使用瀑布模型可以在软件开发的早期阶段就可以为需求和设计提供了包括质量增强在内的许多优势。同时使用瀑布模型可以在软件的设计阶段就可以发现并纠正预期的缺陷。而在软件的测试阶段,所有的模块将被集成,从而在这个阶段检测故障并纠正它将是复杂的,因此在测试阶段进行纠错的模式一般不被提倡。一般在软件开发的前两个阶段就需要进行相关软件的纠错,而使用瀑布模型可以高效地向分散在多个位置的软件开发团队成员传达相关信息,从而提高相关工作的效率。
2.2 人工智能技术与计算机应用软件开发之间的关系
人工智能是一个多学科交叉的领域,侧重于将智能方法应用于多个领域。人工智能出现于20世纪80年代,其重点是在计算机应用的可用性和用户的生产力方面实现自动化。随着计算机的普及,人工智能研究人员的兴趣扩大到包括社会计算、普适计算、创造力、无障碍和娱乐等领域。智能代理是一种人工智能活动,其目标是提供有用、可用和理想的产品。智能代理定义了“交互产品和服务的结构和行为,以及用户与这些产品和服务的交互”。人工智能的设计实践遵循以用户为中心的设计的基本原则,基于对真实用户的目标、任务、体验、需求和欲望的理解。瀑布或敏捷模型的一个观点是,致力于开发高质量的软件。目标用户能够使用产品吗;在开始使用之前,他们需要接受大量的培训吗;用户完成任务的时间是否太长;用户在执行任务时是否会出错,这些问题的答案可以决定一个产品的成功或失败。在这里,人工智能技术与瀑布或敏捷模型的重叠变得至关重要。在早期,人工智能技术的应用是有限的,仅在少数领域的软件中进行部署,在有限的平台上,客户的要求是明确的,软件产品往往是由少数运营商内部使用。产品的可用性变得越来越重要,因为业务的成功往往依赖于新手用户能够完成任务。在过去的十年里,软件的使用范围进一步扩大,超越了生产力。除了可用性,自动编队决定了产品在过去十年的成功,并在可见的一段时间内仍会如此。人工智能技术的发展提出了许多过程、活动、方法、技能和可交付成果。典型的人工智能设计过程由一个或多个阶段组成,每个阶段可能包含一个或多个人工智能活动。人工智能方法可能产生一个特定的可交付成果,其本身可能是目的,也可能是人工智能过程或软件开发过程中另一个活动的输入。
2.3 人工智能技术与软件开发瀑布模型的结合
2.3.1 信息通信
在瀑布模型的通信阶段,可以向软件开发过程中增加一定的灵活性。其中模糊逻辑是一种灵活的逻辑推理过程,为学习过程增加了灵活性。学习过程及其评估不能以过于准确的方式进行,因为不同的性质涉及的个性。因此,学习过程和评价需要灵活的逻辑推理过程。模糊集提供的柔性机制可以帮助开发人员进行学习过程,并且由于模糊推理过程而使评价更加容易。此外,评估和细化是软件开发进程第一步中的一个重要步骤。在这个阶段,软件的评估可以通过合成数据值很容易地使用人工智能方法生成。这一步非常有助于预测软件产品的未来行为,即使原始数据不可用。通过使用不同的学习方案,可以很容易地得到缺失数据和合成数据的归属,这些学习方案可以生成与原始数据相似的数据,而无须任何人工干预。在通信阶段也加入了这种综合评价和改进。
2.3.2 规划
瀑布模型的第二个重要步骤是规划,它使用估计、调度和跟踪来执行。这些过程是大多数软件行业通常使用传统方法进行执行的常见过程。在这里,不同的人工智能方法,如智能优化和在线过程适用于每一个环节。智能过程是完全自动化的过程,它可以像专家的大脑一样工作,因此规划可能更准确。同时,优化过程通过搜索空间中的候选解决方案产生有效的计划。另外,计划更新的在线处理对于及时有效地计划软件过程也很重要。在此基础上,将智能分析、最优调度和在线跟踪有效地结合起来,提高了系统的性能。对于不同的约束的优化也可以进行一些质量分析。
2.3.3 建模
建模是软件开发过程中扩展瀑布模型的第三步。在建模阶段,完成了用户界面原型、可用性评估、需求分析和软件设计等重要步骤。在这里,统计建模是额外集成的整个过程建模。统计模型包括概率模型、回归模型和混合模型,它们是人工智能中常用的方法。统计模型是一种隐含的数学模型,它用来模拟现实,也可以用来预测。统计模型是一类数学模型,它包含了关于产生一些样本数据的一组假设,以及来自更多群体的类似数据。一个统计模型代表了数据生成过程,通常是不太理想的形式。因此模型是理论的正式表示,将统计模型集成到瀑布模型中的原因是,通过统计特征所模拟的事件可以帮助从初始步骤本身预测软件产品的结果。
2.3.4 构建
构建阶段涉及瀑布模型中的多个活动,分别是编码、测试、开发和支持以及可用性评估,这些是瀑布模型中的核心活动。一般情况下不建议对最后两个阶段的活动进行任何改变,然而可以使用DSS进行编码。任何软件产品的编码都可以通过与决策支持系统集成来改进。DSS可以给程序员建议或提供所需的信息,以加快开发阶段。DSS分析软件程序将所需信息呈现出来,以便程序员更容易做出决策。决策支持系统可以以图形方式显示信息,也可以包含专家系统或人工智能。集成决策支持系统的原因是它可以减少建议所需信息的人为错误,从而减少调试时间。另外由于图灵测试可以进一步提高产品的测试性能,以此进行集成智能行为也是非常有效的。
3 结论
人工智能技术的发展带动了计算机应用软件的发展,因此人工智能技术的创新也就意味着计算机应用软件的创新,开发计算机应用软件要注重人工智能技术的应用,特别是在安全防护、信息入侵等方面。通过人工智能技术,可以有效地优化计算机应用软件,进一步提高计算机应用软件开发的技术水平。因此相关计算机应用软件的开发人员仍需要进一步的强化人工智能技术与计算机应用软件开发技术的深度结合,解决目前人工技能技术在应用过程中存在的种种问题,并通过对人工智能技术的发展和创新促进计算机应用软件开发技术水平的提高,为计算机应用软件的使用者提供更好的使用体验。