网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
07月13日漏签0天
人工智能吧 关注:115,964贴子:507,933
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 首页 上一页 1 2 3 4 5 6 7 下一页 尾页
  • 104回复贴,共7页
  • ,跳到 页  
<<返回人工智能吧
>0< 加载中...

回复:如何实现自编程序?

  • 只看楼主
  • 收藏

  • 回复
  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  前两天查一个程序资料,顺便翻看一下其中关于WINDOWS图形调用的介绍,有趣的是:那里经过几页的篇幅,讲解了上万字,仅仅在屏幕上显示出一个“你好”的文字图形。
  我说这话的意思,不是认为它这样做不好,它做得好好,很对。因为在这里人们主要需要了解的是,如何WINDOWS状态下,编写程序,调出一个图形来显示。至于图形是复杂,还是简单,没有什么意义!
  那些嘲弄“加法程序简单”的人,恐怕在看书时,连这样的问题都没想过。


  • 机器在思考
  • 2B
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
本来我也是不太同意你的观点的,因为初开起来你的理论实现会遇到很多困难,今天忽然间我想通了,你的自编程是可以理解的,就象生物进化一样,优胜劣汰,适者生存,生命体各个小功能不断得到进化,从而实现整体的质变。问题就在于,进化的前提你没有提到,那就是建立类似DNA功能的结构体系,我以前经常想过这样的体系的建立,我认为各种高级算法倒并不一定用得到,因为如果用自编程理论那么这样的体系就能自身得到完善...你说呢
一点建议谢谢批评指正


2025-07-13 02:48:14
广告
  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  作者: 机器在思考 2008-7-31 09:52
  问题就在于,进化的前提你没有提到,那就是建立类似DNA功能的结构体系,
----------------------------
  进化实际上也是一种学习,它是用DNA记录学习结果的一种学习。DNA是“进化学习法”的记忆机制,但是这种记忆方式会导致上一代物种的灭绝。
  学习也是一种进化。它是不以物种灭亡为代价的进化。与造成物种灭绝的DNA记忆设备不同,“学习进化法”采用神经网络记忆,这样就保证了在物种不变的前提下,功能发生进化。


  • 218.24.205.*
快试试吧,
可以对自己使用挽尊卡咯~
◆
◆
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
实现自编程是非常困难的,没有商业价值,没有哪个能投资搞这个的。
原因是,如果真的成功了,那么微软吃什么,喝什么,吃喝都没有了,还臭美什么


  • johnson12321
  • 人脸辨识
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
自编 很简单 关键是怎么给那个会编写程序的程序说明要做出什么样个程序 什么效果 什么功能的


  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  接第五十八楼
  6、程序的另一种形式。

#include <stdio.h>
#include <iostream.h>
#include <string.h>
int static s[4];
void zhixing()
{
cout<<"请输入两个加数"<<endl;
}
void zhixing1()
{
cin>>s[0];
}
void zhixing2()
{
cin>>s[1];
}
void zhixing3()
{
s[2]=s[0]+s[1];
}
void zhixing4()
{
cout<<s[0]<<"+"<<s[1]<<"="<<s[2]<<endl;
}
void (*aaa[10])()={zhixing,zhixing1,zhixing2,zhixing3,zhixing4};
void main()
{
for (s[3]=0;s[3]<=4;s[3]++) aaa[s[3]]();
}


  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  7、程序说明。
  与第三段的程序相比,这个程序作了两个变动:

  第一是主程序采用循环语句,来把函数指针组织为程序。
  这里还体现出“母程序”的控制循环的作用。前面说过,“小程序”本身没有循环之行的语法,但是可以有“母程序”控制循环。这里主程序的循环,就表现出“母程序”控制循环的方式。
  我在第3段不采用循环,而采用依次写出的方式,也就是为了在这里突出这个“母程序”控制的循环。

  第二是赋值采用直接向函数指针数组变量里填写。省去了赋值函数fuzhi(),也省去了主函数对赋值函数的调用运行。
  这一点在技术上没有什么特殊的。仅是是想表现一下,函数指针数组的不同赋值方式而已。

  这样,第六段的程序的通用性就比较好,可以作为我们利用“函数指针和函数指针数组”组织程序的一个程序模型来使用。


  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  三、自主学习的“自编程”程序。

  1、“模拟语句学习”的“自编程”程序。
  要想用比较简单的方式,演示出自编程序的效果,但是找到一些“小程序”组成一些自编程序,既能形象地演示出组合效果,又不至于因为它们的复杂,而冲淡自编程序的主结构。
  于是我经过两个多月的考虑,终于想到了用对语言的自主学习过程,来作为自编程序的“程序模型”。

  人类的语句是利用重新组织的形式表达出来的。而不是像计算机那样,调用字符串调出来的。
  人类对于语句的组织,就是一个自编程的过程。
  这往往反映在小学生学习造句的过程中。

  人类对语句的学习,有两种学习过程可以实现,一种是通过自主学习过程来实现,另一种是通过模仿学习过程来实现。它们都是“自编程”过程。而且对于热人类的大多数语句,都是通过模仿学习而来的。

  我们先编写一个用自主学习过程学习语句的程序。它既向我们演示了自编程的基本原理。又向我们演示了自主学习过程的基本原理。


2025-07-13 02:42:14
广告
  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  2、将编写的“自编程”程序的目的。
  我下面设计的这个以“自主学习算法”完成的“自编程序”程序模型,其目的是学会把几个字正确地连接成语句。
  这几个字(字符)是“我”、“要”、“吃”、“糖”、“!”。

  我选择这几个字,是因为它们的组合里只有一个完全合格的,即“我要吃糖!”。还有一个不大符合语法“要我吃糖!”和一个符合语法、不合常规的“糖要吃我!”。

  这个程序并不是采用调用字符串的方式输出语句,它是用把单独输出以各自的程序组成整体语句输出程序。这样它既是利用“自主学习算法”学习一个语句,又是利用“自编程序算法”编写一个输出正确语句的程序。
  当然,我们也可以用组合字符串(而不是组合显示程序)的方式学习正确的表达语句。但是那种学习已经与自编程序无关。因此不是我们此处要讨论的问题。
  顺便指出:用组合字符串的方式进行语句表达学习,也属于“自主学习”,也是“自主学习算法”的任务范围。但是它不是“自编程序算法”的任务范围。也就是说,那时,“自主学习算法”与“自编程序算法”不再重叠。这也表明,这两个算法虽然有时重叠,但是它们并不是一回事!

  这个程序,在不断显示出各个字符组合后,终于出现正确的组合,此时用户可以确认这个输出正确。该“母程序”就会把正确输出的程序记录下来,作为它的“自编程序”保存。
  学习以后,该“母程序”就会调用这个“自编程序”,只显示出一个正确的语句。

  不过这个程序里,我没有设计存盘部分。因此在退出运行后,对学习结果的“自编程序”的纪录也就消失。再次运行还要重新学习。


  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  3、“遍历组编问题”归结为“数字组合编号问题”。
  什么是遍历组编问题?
  由于正确的“自编程序”一定是这些“小程序”组合中的一个。而我们的这个“母程序”又是一个无智能程序,它不会自己分析各个“小程序”的内容,做出正确的选择。(甚至更有趣的是,它因为没有设计“知道程序”,计算机程序并不“知道”那些“小程序”有什么作用?)。
  因此要从“小程序”的组合中选择出正确的语句表达方式来,就需要遍历“小程序”的所有组编,把它们一一组合后执行。

  那么,这个问题如何发生转变了呢?
  因为我们采用了函数指针数组,用它来保存显示各个字符(词汇)的“小程序”。
  于是,要想从所有的“小程序”组合中找到一个合适的组合,由这个组合表示正确的语句。就是要从函数指针数组的不同编号顺序中选择出一个合适的编号组。


  • 别问是劫是缘
  • 2B
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
void (*aaa[10])()={zhixing,zhixing1,zhixing2,zhixing3,zhixing4};
void main()
{
for (s[3]=0;s[3]<=4;s[3]++) aaa[s[3]]();
}
-------------------------------------------
不知道你在想表达什么问题,我只知道aaa数组中必须有相同的形参和相同的返回数据类型,否则,这个程序根本无法执行


  • 别问是劫是缘
  • 2B
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
另外,建议 ruiaijun
 注意程序的可读性,否则,别人很难理解,如果看不懂你的程序,那会是什么结果?你自己可以考虑


  • 别问是劫是缘
  • 2B
    13
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
其实类的多态性,可以实现比你的程序更复杂的控制行


  • dapplehou
  • 纳斯德
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
“多态”与“复杂的控制”无关!


2025-07-13 02:36:14
广告
  • ruiaijun
  • T1000
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
  7、“数字标号组合”发放程序的说明。
  A、变量与被调函数的介绍:
  s[10]:这是一个全局变量,它负责纪录由组和函数发放的组合标号。也由主函数来执行这个数组里的标号。当正确组合出现后,由于组和函数不再被调用,这里也就成为运行结束前保存正确组合标号的地方了。

  qw:组合记录变量。它记录后三位的移位次数。
  qq:组合记录变量。它记录前一位的移位次数。
  q:这是一位中间变量,暂时保存移动的数据。

  zuhe():组合发放函数。它负责前一位移动的开关语句判断。
  zuhe1():组合发放函数。它负责后三位移动的开关语句判断。
  dao0():移位函数。它负责后两位移动操作。
  dao1():移位函数。它负责后一位与第二位的移动操作。
  dao2():移位函数。它负责后一位与第一位的移动操作。


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 首页 上一页 2 3 4 5 6 7 下一页 尾页
  • 104回复贴,共7页
  • ,跳到 页  
<<返回人工智能吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示