动物识别-专家系统(js)
最近上人工智能的研究生课程,老师留了道课后作业,用于动物识别的专家系统;看完题目要求后,自然而然的到网上百度,发现用c、java写的
代码有很多,作为一个比较熟悉前端的我来说,必然首先会想到用js来搞一搞。废话不多说,上代码:
// An highlighted block
<html>
<head>
<title>人工智能</title>
</head>
<body>
<h1>人工智能——基于产生式的动物识别系统(JS)</h1>
<div id="themeList">
</div>
</br>
检索条件(输入标志序号,英文逗号分隔)<input id="condion" type="text" value="" />
<button type="button" id="closeb" onclick="check()">检索 </button>
</br>
<div id="result">
</div>
</body>
<script type="text/javascript">
var themeList = ["反刍","有蹄","哺乳动物","眼向前方",
"有爪","犬齿","吃肉","下蛋",
"不能飞","有羽毛","有蹄类","食肉类",
"鸟类","有奶","毛发","善飞",
"黑白二色","游泳","长腿","长脖子",
"黑条纹","暗斑点","黄褐色"];
var result = {
'[15]':'哺乳动物',
'[14]':'哺乳动物',
'[10]':'鸟类',
'[9,16]':'鸟类',
'[7]':'食肉类',
'[4,5,6]':'食肉类',
'[2,3]':'有蹄类',
'[1,3]':'有蹄类',
'[3,7,22,23]':'金钱豹',
'[3,7,21,23]':'虎',
'[2,19,20,22]':'长颈鹿',
'[2,21]':'斑马',
'[9,13,17,19,20]':'鸵鸟',
'[9,13,17,18]':'企鹅',
'[13,16]':'信天翁'
}
var resultObj = {
r1:[15],
r2:[14],
r3:[10],
r4:[9,16],
r5:[7],
r6:[4,5,6],
r7:[2,3],
r8:[1,3],
r9:[3,7,22,23],
r10:[3,7,21,23],
r11:[2,19,20,22],
r12:[2,21],
r13:[9,13,17,19,20],
r14:[9,13,17,18],
r15:[13,16]
}
window.onload=function(){
init();
}
function init(){
var str = "";
for(var i=0;i<themeList.length;i++){
str += (i+1)+"-"+themeList[i];
if((i+1)%3 == 0 || (i+1) == themeList.length){
str += '</br>'
}else{
str += '————'
}
}
document.getElementById('themeList').innerHTML = str;
}
function check(){
var flag = 0;
var arr = document.getElementById('condion').value;
if(arr.indexOf(",") != -1){
arr = arr.split(",");
}
for(var i=1;i<16;i++){
var ch = 'r'+i;
var resultObjStr = resultObj[ch];
if(resultObjStr > 1){
resultObjStr = resultObjStr.sort(sortNumber);
}
if(typeof(arr)!='string'){
arr = arr.sort(sortNumber)
}
if(resultObjStr.toString()==arr.toString()){
flag = 1;
document.getElementById('result').innerHTML = result['['+resultObj[ch].toString()+']'];
return;
}
}
if(flag == 0){
document.getElementById('result').innerHTML = '没有符合检索条件的结果,请重试!';
}
}
function sortNumber(a,b)
{
return a - b
}
</script>
</html>
代码比较简单,创建一个html文件,复制代码后直接双击运行即可
版权声明:本文为qq_33055131原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。