桂电新生智慧校园服务平台的设计与实现

2022-11-11 04:34张怡萱陈光喜蒋意坚陈煜坤
电子测试 2022年20期
关键词:服务器端客户端新生

张怡萱,陈光喜,蒋意坚,陈煜坤

(桂林电子科技大学,广西桂林,541004)

0 引言

该项目开发的服务于桂电新生Android和双平台的智慧信息服务软件“新生智慧校园服务平台”,有以下几个主要模块:基于人工智能算法的“选课指导”构建论坛模块、使用Unity3D并接入高德地图API的“校园导航”模块、由智能算法进行分析推送的“日常攻略”模块、提供入学常识的“新生专区模块”、导入校园要闻,帮助新生了解学校的“校园记事”模块以及通过智能算法对学生喜好进行预测分析和推送的“商家服务”模块。

1 项目背景

随着网络技术不断发展,社会信息化程度逐步提高,智能化和信息化的概念走入校园。但目前大部分高校数字化资源存在信息分散,缺漏,独立等缺点,导致学生无法充分高效地利用好已有信息。如何汇集和补充独立的信息资源并智慧地利用,同时整合成一个统一的接入平台成为了很多高校亟待解决的重要问题之一。并且随着人工智能领域不断发展,数据集成分析以及大数据时代的降临,促使计算机不断向着更加智慧的方向发展,此时基于Web开发一款综合性智慧信息服务平台软件便是尤为重要。

2 系统软件设计方案与实现

本项目基于桂林电子科技大学,由项目组开发一款针对桂电新生的智慧校园服务平台。平台可以实现信息的传递、获取和交流,且融合了商务推荐、情景可视化、交流论坛等功能,并集成以往孤立的高校数字化资源,成为一个统一的智慧接入平台。平台为单入口单出口式,能够最大限度利用资源服务广大新生。加上人性化的交互界面,方便新生更好更快融入校园生活。项目的具体实施方案将主要在以下几个方面:

(1)用户界面

web端主要采用HTML标签结合CSS样式布局前端页面,通过JavaScript实现网页动态效果。网页按照head-bodyfooter的纵向模式进行设计,各页面风格保持一致。

(2)地图导航

在Unity3d上构建建筑物及场景3D模型。其中室内导航需通过硬件设备(蓝牙布点设备)进行定位,而室外定位需要获取两个坐标点。一个是使用高德地图API进行坐标拾取,再导入自定义地图实时更新定位信息,并与后台SQL数据库进行数据交流,之后通过后台数据库更新Unity3d中用户点位置坐标。同样用户选择目标点,从数据库导出位置坐标标记在模型上。这样确定两个点位置坐标后利用Unity3d中NavMeshObstacle组件生成自动导航路线,通过DrawLine将引导线可视化,再添加First Person Controller于用户所在点来进行第一人称视角控制(或者改为添加Third Person Controller实现第三人称视角控制)从而实现可视化与交互性极高的3D实景地图导航。

(3)用户信息交互

用户操作流程为:启动—登录界面—认证—主界面—选择功能—获取数据,此处选用了开源且速度快的MySQL主从服务器进行数据交互。我们选择基于浏览器制作网站从而构建Web客户端。网站前端通过HTML5进行设计,后台框架使用 SSM 框架(Spring、Spring MVC、MyBatis)。网站后台使用WebAPI模型作为服务器端,并采用具有三层模式的Browser/Server结构(即浏览器/服务器结构),利用JSON进行数据流入交互。当Web客户端向服务器端发起请求时,Web服务器端快速响应,与数据库交互并获取数据后,向客户端返回请求数据。若用户想要进行信息交互(话题发布等)需验证登录,即将用户名密码发送至服务器端校验,若该用户存在则返回确认信息。除开这种传统验证还可以使用第三方验证登录模式,比如手机加短信验证,QQ登录等。该用户信息可由客户端保存至SharedPreference类里,这样就不需要重复登录了。

选课指导包括一级索引—学院、二级索引—专业、三级索引--课程类别等等,同时存储学院、专业、课程名、课程代码及对应教师等属性,为每门课提供选课指导、教学反馈等信息。

商家服务主要包括商家名、地址、销售商品及价格、菜品评分等信息,再实现分级索引,逐级细化再结合用户常点菜品为用户推送匹配菜品。

用户信息包括注册的信息,如用户名、密码、手机号等。

图1 客户端与服务端数据库关系(MVC模型)

其中使用到的MVC模型是一种使用Model-View-Controller设计创建 Web 应用程序的模式。

MVC分层有助于管理复杂的应用程序,同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

(4)智能交互

图2 数据结构化框图

通过获取用户的信息存储数据及本地浏览信息,得到原始的数据,之后对数据进行特征构建,包括数据清洗、数据合并和数据特征结构化。数据清洗主要对一些错误信息进行清洗,比如数据传输不当导致的乱码等。清洗过后即数据合并。最后进行数据结构化处理,也是根据特征进行数据融合,比如归类用户对某项信息的检索持续时间,检索次数等存储到数据库中。之后对信息进行筛选,我们已知item—based协同过滤算法在计算用户对一个物品的兴趣时十分经典(默认用户对物品打分均为1)。先构建物品的同现矩阵而后利用公式:

将预测评分排序,取topN对应的物品推荐给用户从而进行信息的智能推送。作为协同过滤算法,Slope One也有着稀疏性,扩展性,冷启动问题。同时,如何实现增加一个商品而重新进行推送也是一个亟待解决的问题。对此,本项目针对冷启动问题,先通过用户的基础信息(年龄,性别等)找到同类用户集,系统计算同类用户级对某个项目的平均评分即为新用户的初始评分。针对稀疏性问题,利用IBCF思想,认为用户对类似项目有相同的的意见,即用户偏好可由用户的历史模式看到。至于扩展性问题,平台规模较小,受影响程度不大,不置以考虑。而大量的校园数据,也代表着有统计回归的用武之地,最经典的逻辑回归(Logistic Regression)分析算法可以预测一些有用的信息,其用于两分类问题(即输出只有两种)。它需要先找到一个预测函数(h),显然,该函数的输出必须是两个值(分别代表两个类别),所以利用了Logistic函数(或称为Sigmoid函数),其对应的函数图像是一个取值在0和1之间的S型曲线。此时暂时考虑影响因素为线性的。通过推导算法得:

由于逻辑回归模型是一个经验训练性模型,前期我们已有数据结构化、特征值提取的步骤,此时很快就能得到部分需求预测的数据。

(5)校园信息

若获得学校校组织授权,以HTML5构建良好的UI界面,通过直接访问学校及校组织相应管理部门的数据库,对其缓存,并解析分类其信息放在不同板块显示动态传递校园信息。用HTML5构建测试服务系统页面,与小型本地数据库连接,动态考察,统计新生的入学概念掌握。

猜你喜欢
服务器端客户端新生
你的手机安装了多少个客户端
“人民网+客户端”推出数据新闻
——稳就业、惠民生,“数”读十年成绩单
重获新生 庇佑
Linux环境下基于Socket的数据传输软件设计
坚守,让百年非遗焕新生
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计
媒体客户端的发展策略与推广模式
新生娃萌萌哒
基于C/S架构的嵌入式监控组态外设扩展机制研究与应用