Нээлттэй
Хаах

Хүний хөдөлгөөнийг дуурайдаг компьютерийн програм. Маркетингийн ажилд роботыг амжилттай ашиглах

Шинжлэх ухаан, технологи

Виртуал ярилцагч (eng. chatterbot) нь нэг буюу хэд хэдэн хэрэглэгчтэй харилцахдаа хүний ​​ярианы зан үйлийг дуурайх зорилгоор бүтээгдсэн компьютерийн программ юм. 1966 онд Жозеф Вайзенбаум Элиза хэмээх анхны чат программыг бүтээжээ. Тэрээр сэтгэл засалчийн ярианы зан үйлийг элэглэсэн, тухайлбал: идэвхтэй сонсох, хэрэглэгчээс дахин асууж, "Үргэлжлүүлээрэй" гэх мэт хэллэгүүдийг ашигласан.

Хиймэл оюун ухааны төслүүдийн амжилтыг тодорхойлохын тулд 1950 онд боловсруулсан Тьюрингийн сорилыг давах хамгийн тохиромжтой ярилцагч хөтөлбөр байна. Үүний мөн чанар нь хүн хоёр ярилцагчтай харьцдаг бөгөөд тэдгээрийн нэг нь хүн, нөгөө нь компьютерийн програм юм. Хэрэв хэн нь хэн бэ гэдгийг тогтоох боломжгүй бол компьютерийг шалгалтад тэнцсэн гэж үзнэ. Гэсэн хэдий ч ганц ч виртуал ярилцагч үүнийг хийж чадаагүй байна. Ихэнх орчин үеийн програмуудын үйл ажиллагаа нь энгийн яриа хийх чадвараар хязгаарлагддаг.

Ярилцагч програмууд

Чатмастер

ChatMaster бол орос хэлээр ярьдаг анхны сайн виртуал ярилцагчдын нэг юм. Энэ бол өөрөө суралцах хөтөлбөр юм. Түүний хүнтэй харилцах чанарыг "зохистой" гэж үнэлж болно. ChatMaster нь контекст мэдрэмтгий харилцан яриаг явуулдаг, өөрөөр хэлбэл өмнөх хувилбарууд дээр үндэслэсэн хуулбарын утгыг ойлгодог. Хэлэлцүүлэгт иероглифийн бус аливаа хэлийг (бүх Европ болон зарим Азийн хэл) ашиглаж болно. Нэмж дурдахад програм нь хэрэглэгчдэд ээлтэй интерфэйстэй бөгөөд үгийн нэлээд том мэдээллийн сантай. ChatMaster-ийн сул тал нь бүх зүйлийг, тэр ч байтугай санаж болохгүй зүйлсийг ч бодож, санахад хэтэрхий удаан хугацаа шаардагддаг.

Цахим тархи 1300

Electronic Brain 1300 бол харилцан ярианы таатай програм юм. Сайн мэдлэгтэй: нэлээд том, анхны хуулбартай. Шинэ хувилбар нь модонд суурилсан мэдээллийн санг ашигладаг. Нэмж дурдахад хөтөлбөрт шинэ хэллэгийг хялбархан зааж болно. Цахим тархины сул тал нь интерфэйс нь хэрэглэгчдэд ээлтэй биш юм: хяналтын элементүүд нь ер бусын газруудад байрладаг.


Chatterbox

Chatterbox бол сайн суурьтай, хошин шогийн мэдрэмжтэй сайн ярилцагч програм юм. Энд хариуг маш хурдан өгдөг. Чатчинд өөртэйгөө ярилцах хүн заавал байх албагүй; Хэдийгээр энэ нь өөрөө суралцах боломжтой програм боловч мэдээллийн санг шинэчлэх файлуудыг нэмж өргөтгөх боломжтой. Нэмж дурдахад Chatterbox нь хэрэглэгчдэд цонхны гарчиг болон хэрэгслийн самбарын харагдац дахь дүрсийг өөрийн дүрсээр солих боломжийг олгодог.


ДИАЛА

Энэхүү хөтөлбөр нь хиймэл оюун ухааныг дуурайхыг оролдсон хүнтэй орос хэл дээр ямар ч сэдвээр харилцан яриа өрнүүлдэг. Хөгжүүлэгчдийн үзэж байгаагаар DIALA өөрийгөө эмэгтэй хүн гэж үздэг бөгөөд эрэгтэйчүүд болон ерөнхийдөө хүн төрөлхтөнд нэлээд шүүмжлэлтэй ханддаг. Илүү их эсвэл бага холбоотой харилцан яриа өрнүүлэхийн тулд та зөвхөн бүрэн хэмжээний өгүүлбэр оруулах хэрэгтэй бөгөөд тус бүр нь бүрэн санаа агуулсан болно. Ярилцлагын сэдвийг гэнэт, үндэслэлгүй өөрчлөхийг зөвлөдөггүй. DIALA бол өөрөө сурах програм тул та түүнд тэнэг юм хэлж болохгүй, эс тэгвээс тэр даруй санаж, удахгүй буцааж авах болно. Дараа нь түүнийг үүнээс салгахад хэцүү байх болно.


Виртуал Путин

V.V-тэй ярилцах хүсэлтэй хүмүүс. Путин, түүнээс хэдэн асуулт асуу, эсвэл зүгээр л муу амьдралтай гэж зэмлээрэй, тэд "Виртуал Путин" хөтөлбөрөөр дамжуулан түүний виртуал давхартай харилцах боломжтой. Энэ нь тааламжтай интерфэйс бүхий тохиромжтой ярилцагч програм юм. Виртуал Путинтэй аль хэдийн харилцаж чадсан хэрэглэгчдийн үзэж байгаагаар уг программ нь хүнтэй бүрэн ухаалаг, олон талын яриа өрнүүлдэг бөгөөд заримдаа мэдлэг, дэвшилтэт сэтгэлгээгээрээ гайхшруулдаг. Үүнээс гадна Виртуал Путин ярианы ямар ч сэдвийг хялбархан дэмжиж чадна. Зөвхөн нэг шаардлага бий - та ердийн орос хэлээр харилцах хэрэгтэй бөгөөд хараалын үг хэрэглэхгүй байх хэрэгтэй. Виртуал Путин амархан гомддог.

Сайн уу, Хабр!

Би саяхан Дарвинбот хөтөлбөрт генетикийн алгоритмын курсын ажил хийж дуусгаад энэ нь нийгэмд сонирхолтой байх болно гэж шийдсэн. Түүгээр ч барахгүй, одоогоор төслийн хамт олон нэлээд цөөхөн байна. Нийтлэлүүд нь баримт бичгийн хагас орчуулга, хагас нь өөрсдийн судалгааны хөтөлбөр байх болно.

1. Анхны танил

2.

Тиймээс Darwinbots програм бол хиймэл амьдралын симулятор юм. Эхний хувилбаруудыг Италийн програмист Карло Комис Visual Basic програмчлалын хэлийг ашиглан бичсэн. Одоогийн байдлаар програмын хамгийн сүүлийн хувилбар нь 2012 оны 8-р сарын 21-нд гарсан 2.45.02D юм. Одоогоор C# хэл дээр бүрэн дахин бичсэн програмын гурав дахь хувилбарыг боловсруулж байна. C++ хэл дээр бас порт байдаг. Төслийн эх кодыг Subversion хувилбарын хяналтын системд нийтэлсэн бөгөөд хүн бүр ашиглах боломжтой.

Энэхүү програм нь ДНХ-ийг тусгайлан боловсруулсан хэлээр гараар дүрсэлсэн организмын популяцийн амьдралыг дуурайдаг - роботууд (роботууд). ДНХ нь үндсэндээ олон төрлийн оролтоос мэдээллийг уншиж, өөрчилдөг, үйл ажиллагаа явуулах боломжтой гаралттай холбодог том төлөвийн машин юм. Ботын кодыг (цаашид ДНХ гэх) .txt өргөтгөлтэй текст файлд дүрсэлсэн бөгөөд энэ нь ямар ч засварлагч, тэр дундаа Notepad програм дээр ажиллах боломжийг олгодог. Симуляцийн мөн чанар нь организм, мутаци, вирус гэх мэт боломжит харилцан үйлчлэлийг харгалзан мөчлөг бүрт ДНХ-ийг гүйцэтгэх явдал юм.

Darwinbots програмын интерфейсийн гол элемент нь ботын ертөнц (эсвэл симуляцийн талбар) юм. Ботуудын ертөнц бол салангид бус том хавтгай юм (тиймээ, өмнө нь байсан цэнхэр тэгш өнцөгт). Анхдагч байдлаар, роботууд дэлхийн өнцөг булан бүрт шилжих боломжтой. Дэлхийн тохиргоог симуляцийн тохиргоонд тохируулсан.

Бот бүр нь тодорхой хэмжээ, өнгөт тойрог хэлбэрээр дүрслэгдсэн бөгөөд голд нь ямар нэгэн хээ байдаг. Ботын "нүд" нь цагаан цэгээр тэмдэглэгдсэн байдаг. Үүнд 9 энгийн нүд багтана. Та симуляцийн талбар дээр роботыг сонгохдоо нүд бүрийн харах талбаруудын сүлжээг харж болно. Нүд нь харах талбар дахь объектын хэмжээтэй ойролцоо утгатай утгыг програм руу дамжуулдаг.

Бот нь өөр ботын мөргөлдөх, дайралтыг мэдрэх боломжийг олгодог энгийн мэдрэгчтэй мэдрэхүйн системтэй. Ботуудын мэдрэхүйн оролтыг ДНХ-д задлан шинжилдэг бөгөөд энэ нь давхарласан ялтсуудын зарчим дээр үндэслэн FILO (эхний орсон, хамгийн сүүлд гарсан) хийсвэрлэлийг ашиглан хэлээр бичигдсэн байдаг. Ихэнх роботууд ген гэж нэрлэгддэг 6-20 ДНХ-ийн процедуртай байдаг бөгөөд эдгээр нь 200 хүртэлх үйлдлийг гүйцэтгэдэг. Үйлдэл бүр мутацид орж болно.

Бот бүр өөрийн эрчим хүчний нөөцтэй байдаг. Ихэнх үйлдэл нь эрчим хүчний хэмжээг бууруулдаг. Эрчим хүч 0-д хүрэхэд бот үхэж, ДНХ-д тодорхойлсон түвшнээс дээш гарахад дахин үржиж эхэлнэ. Бусад ботуудыг шингээх (ердийн орчинд ан хийхтэй адил) болон өөрийн "бие"-ээс энергийг хуримтлуулах замаар эрчим хүчийг нөхөж болно. Хэрэв ботыг автотрофоор сонгосон бол эрчим хүчийг удаан хугацаанд автоматаар нөхдөг.

Бот нь биет бус сум харвах, довтлох, хог хаягдал гаргах, халдвар авах, бусад роботуудтай мэдээлэл солилцох боломжтой. Суваг нь загварчлалын талбар дээрх масс болон физик хэмжээсгүй цэг юм.

Бот нь бусад роботуудтай харилцаж, олон эсийн цогц бүтцийг бүрдүүлдэг бөгөөд үүний дотор роботууд эрчим хүч, үйл ажиллагаа солилцож, талбайг тойрон хөдөлдөг.

Бот үржих үед түүний ДНХ нь үр удамд нь дамждаг бөгөөд заримдаа ботын зан төлөвт нөлөөлдөг зарим өөрчлөлтүүд байдаг. Бодит ертөнцийн нэгэн адил хувьсал нь ДНХ-ийн өөрчлөлттэй холбоотой байж болно - дараагийн үеийн роботууд довтлох, үржих, холбоо барихаас зайлсхийх гэх мэт илүү чадвартай болж магадгүй юм. Ийм мутаци нь үеэс үед дамждаг эсвэл алга болдог. Цаг хугацаа өнгөрөхөд ДНХ нь ямар ч ашиггүй кодыг хуримтлуулж чаддаг. Энэ нь илүү их энерги зарцуулж, ДНХ-г илүү ачаалалтай болгоно.

Хөтөлбөр нь аль организмыг ургуулахыг шийддэггүй тул ботын чадвар нь хөдөлгөөн, эрчим хүчний менежмент, нөхөн үржихүй гэх мэт стратегиудын хослолоор удаан хугацаанд илэрдэг. ДНХ кодын нарийн төвөгтэй байдалд ямар ч хязгаарлалт байхгүй.

Дарвинбот дахь хувьсал нэлээд удаан хугацаа шаарддаг. Ботуудын нэг үе хэдэн мянган мөчлөгийн турш амьдрах боломжтой бөгөөд ихэнх симуляци нь секундэд 15 орчим циклээр ажилладаг тул байгалийн чухал сонгон шалгаруулалт эхлэхээс өмнө хэдэн цагаас хэдэн өдөр зарцуулдаг.

Мэдээжийн хэрэг, энэ танилцуулга нийтлэлд би таныг энэ төслийн талаар сонирхож чадахгүй байсан ч өгөөш болгон хэлэхэд програм нь интернет горимтой (зарим төрлийн PvP) бөгөөд бот хөгжүүлэгчид лигт оролцох боломжтой. өрсөлдөөн.

Дараагийн өгүүллээр бид симуляцийн тохиргоо болон бот програмчлалын талаар ярих болно.

Эцэст нь анхаарал татахуйц зургууд.