Prolog解决数独问题

  • 问题简述
  • 建立Prolog.pl文件
  • 解决数独问题

问题简述


我们尝试使用 Prolog 来解决这道数独问题。
已知可以填充的所有单词为:
dog, run, top, five, four, lost, mess, unit, baker, forum, green, super, prolog, vanish, wonder, yellow.
已知数独的填充格式如上图所示。


建立Prolog.pl文件

首先将已知输入到pl文件中:

word(d,o,g).
word(r,u,n).
word(t,o,p).
word(f,i,v,e).
word(f,o,u,r).
word(l,o,s,t).
word(m,e,s,s).
word(u,n,i,t).
word(b,a,k,e,r).
word(f,o,r,u,m).
word(g,r,e,e,n).
word(s,u,p,e,r).
word(p,r,o,l,o,g).
word(v,a,n,i,s,h).
word(w,o,n,d,e,r).
word(y,e,l,l,o,w).

构建数独结构:

solution(L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,L11,L12,L13,L14,L15,L16) :- word(L1,L2,L3,L4,L5),word(L9,L10,L11,L12,L13,L14),word(L1,L6,L9,L15),word(L3,L7,L11),word(L5,L8,L13,L16).

构建结束!


解决数独问题

使用prolog运行文件,输入求解:

?- solution(L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,L11,L12,L13,L14,L15,L16).

得到答案:

即:

关于Prolog安装与简单逻辑,见博客:https://blog.csdn.net/weixin_43098506/article/details/124411405

【人工智能Prolog】Prolog解决数独问题相关推荐

  1. 人工智能语言--PROLOG

    人工智能语言--PROLOG [ 作者:张家华    转贴自:本站原创    点击数:6710    更新时间:2004-6-6    文章录入:admin ]       一.什么是人工智能语言 人 ...

  2. 使用Prolog编程语言解决爱因斯坦斑马难题

    使用Prolog编程语言解决爱因斯坦斑马难题 原文链接: http://www.cnblogs.com/lcomplete/p/3192488.html 目前商业上广泛使用的编程语言多是命令式或函数式 ...

  3. 解决数独问题用人工智能还是量子计算?

    作为一种有趣的棋盘游戏,数独诞生100周年之后,它是如何成为计算研究的焦点之一的呢?探索如何使用人工智能或量子计算机从头开始创建一个智能数独求解器. 在深入探究之前,先来了解一下历史 马克•布洛赫说: ...

  4. NeurIPS 2018 | 如何用循环关系网络机智地解决数独类关系推理任务?

    选自 arXiv 作者:Rasmus Berg Palm.Ulrich Paquet.Ole Winther 机器之心编译 参与:李诗萌.王淑婷 本文引入循环关系网络来解决步骤相互依赖的关系推理任务, ...

  5. quantum_用ai或Quantum解决数独

    quantum 人工智能 , 计算机科学 (Artificial Intelligence, Computer Science) 深入了解之前的一些历史记录: (A little bit of his ...

  6. POJ2676,HDU4069解决数独的两种实现:DFS、DLX

    搜索实现:解决数独有两种思考策略,一种是枚举当前格能填的数字的种数,这里有一优化策略就是先搜索能填入种数小的格子:另一种是考虑处理某一行(列.宫)时,对于某一个没用过的数字,若该行(列.宫)只有一个可 ...

  7. 递归回溯生成和解决数独问题c/c++

    数独 程序地址https://github.com/papicheng/blog/tree/master/%E6%95%B0%E7%8B%AC 一.游戏规则介绍: 数独是源自18世纪瑞士的一种数学游戏 ...

  8. VBA:完美解决数独问题----全网最强

    [说在前面]: 之前,我在微信朋友圈看到一个同事发了一个状态,说的是她在家辅导孩子做作业,一个数独的题目,好像没有做出来.我看了下,我也做不出来,后来仔细想了下,花了两个多小时时间,用Python编了 ...

  9. 深度搜索----深度搜索解决数独问题

    深度搜索----深度搜索解决数独问题 1.深度优先搜索(DFS) 从某个状态开始,不断的转移状态直到无法转移,然后回退到前一步的状态,继续转移到其他状态,如此不断重复,直到找到最终的解. 2.数独问题 ...

最新文章

  1. C#里partial关键字的作用(转摘)
  2. 谷歌地球API相关网页翻译
  3. buu [GXYCTF2019]CheckIn
  4. PMcaff-干货| 产品经理应该了解的服务设计那些事儿
  5. HTML encoding of foreign language characters
  6. mysql left/right join算法效率分析_mysql left join,right join,inner join超详细用法分析
  7. mysql concat 引号_在MySQL concat里面使用多个单引号,三引号的问题
  8. python开发视频大全_2019年python开发编程21天快速入门视频教程+书籍大全和面试大礼包...
  9. 工业机械类企业官网织梦模板源码
  10. Ethercat解析(十五)之程序框架
  11. Python编辑统一缩进(Pycharm)
  12. 材料凝固计算机模拟,颗粒增强金属基复合材料凝固过程的计算机模拟_谢国宏.pdf...
  13. 【RL-GAN-Net】强化学习控制GAN网络,用于实时点云形状的补全。
  14. 当启动文档转换负载平衡器服务时出现如下问题The system cannot find the file specified的解决方案...
  15. origin指数拟合
  16. 01背包问题—dp算法(动态规划)—java代码
  17. SHELL命令 -- 查看显卡型号
  18. 《刷新》读书笔记1-3章
  19. IT外包服务内容介绍
  20. 详细介绍文本检索基准BEIR: A Heterogeneous Benchmark for Zero-shot Evaluation of Information Retrieval Models

热门文章

  1. Oracle日志挖掘技术logminer
  2. 牛逼的架构 vs ‘牛逼’ 的人生
  3. 计算机网络笔记Part3 数据链路层(Data Link Layer)
  4. Centos7.X修改hostname立刻生效-修改/etc/hostname后立刻生效-Centos7.x修改hostname永久生效
  5. 【游戏逆向】某某明月刀_技能冷却分析
  6. 利用BrainTree自定义UI绑定信用卡及Paypal
  7. 学习云计算有什么用处 该怎么学好云计算技术
  8. python读取xlsx文件找不到_在python中打开并读取excel .xlsx文件
  9. 路由器连接上但上不了网原因及解决方法
  10. ref改变样式 vue_vue.js对样式的具体操作详解