OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 19 Сентябрь, 2019 05:20

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 54 ]  На страницу 1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: Понедельник, 31 Август, 2009 08:45 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 109
Откуда: Саратов
Меня не оставляет идея сделать дополнение к Дракон-схемам (viewtopic.php?f=62&t=1715) в виде этакой экспертной системы. Скачал на сайте BlackBox, начитываюсь сейчас.
В связи с этим у меня вопрос - может ли кто-нибудь выступить консультантом при написании программы? У меня был раньше опыт написания небольших программок (от конструктивной лени). И по BB возникли некоторые вопросы, а приложенный учебник - явно переведенный и достаточно сложен, чтоб вот так вот сразу.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 31 Август, 2009 10:29 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2311
Откуда: Россия, Томск
Бытко Сергей писал(а):
В связи с этим у меня вопрос - может ли кто-нибудь выступить консультантом при написании программы?
Обращайтесь.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 31 Август, 2009 10:34 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2931
Откуда: г. Ярославль
С удовольствием поделюсь опытом.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 03 Сентябрь, 2009 00:01 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 109
Откуда: Саратов
Итак, вот предварительная схема того, что я хотел бы видеть на первом этапе.
Экспертная система, как я понимаю, должна обеспечивать, с одной стороны, удобное пополнение базы данных по уголовному праву, а с другой - собственно выдачу информации, облегчать принятие окончательного решения.
На схеме представлена как раз эта, вторая часть, как я ее вижу.


Вложения:
Комментарий к файлу: Схема
exp.gif
exp.gif [ 53.79 КБ | Просмотров: 8585 ]
Комментарий к файлу: Подсистема "Квалификация преступлений"
exp.drt [5.16 КБ]
Скачиваний: 411
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 03 Сентябрь, 2009 15:30 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 109
Откуда: Саратов
Обращаюсь ко всем: каким образом реализовать базу данных? Мне посоветовали MySQL.
А возможен вариант - сделать базу из нескольких CSV файлов? Как это лучше сделать?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 03 Сентябрь, 2009 15:36 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
Блэкбокс работает с базами данных через ODBC. Таким образом, Вы можете использовать любые источники данных, к которым может обращаться ODBC. CSV, вроде бы, работает в Винде без установки дополнительных драйверов.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 03 Сентябрь, 2009 17:11 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
И, кстати, не поддавайтесь на уговоры перейти на MySQL. Как я понимаю, Вы не для себя делаете эту систему. То есть, пользователю придётся её устанавливать на своём компьютере. Для чего, конечно же, придётся поставить и на строить MySQL, затем поставить драйвер ODBC для MySQL, и затем ещё настроить соединение. Поэтому, если всё укладывается в CSV, то лучше его и использовать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 03 Сентябрь, 2009 17:27 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 109
Откуда: Саратов
Valery Solovey писал(а):
И, кстати, не поддавайтесь на уговоры перейти на MySQL.

Меня никто не уговаривает, просто здесь на форуме SQL мне подсказали в качестве одного из вариантов, за что (за совет) большое спасибо ))


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 03 Сентябрь, 2009 17:34 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2931
Откуда: г. Ярославль
Если в перспективе с базой будут работать интенсивно несколько пользователей, то CSV не спасёт. Более того, если делать именно базу данных, то есть - таблицы, связи между ними, запросы - то лучше брать внешний сервер БД.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 03 Сентябрь, 2009 18:10 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 109
Откуда: Саратов
Параметры базы примерно такие - таблица составов преступлений - порядка 300 записей,
(если детализировать по частям- пунктам статей - то, может быть, 1000) таблицы тегов - еще меньше.
Эта база - я так мыслю, часть более обширной системы, которая изложена сейчас в виде Дракон-схем и реализует часть деятельности по квалификации преступлений.
Про многопользовательский доступ - не думал. Но пользователи по планам будут иметь доступ к данным только для чтения, так что это не проблема.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 04 Сентябрь, 2009 11:48 

Зарегистрирован: Воскресенье, 04 Ноябрь, 2007 23:01
Сообщения: 151
Сначала надо бы "обкатать" прототип, не особо заморачиваясь реализацией поиска в таблице :)
Сделать это можно в ms.Excel(щаз меня освистают :)) или oo.Calc
1. создать листы в соответствии с Гном-схемой - для хранения таблиц тегов и элементов состава преступления из расчёта один_лист->одна_таблица
2. написать один единственный "оочень длинный и правильный" SQL-запрос.
3. добавить ещё один лист в получившийся документ - с формами для ввода ограничений и вывода составов.

Почему так?
1. созданные таблицы могут быть сохранены в csv-формате и импортированы в СУБД необходимого типа. Работа уже не пропадёт даром :)
2. уже готовый запрос за минимальное время может быть адаптирован к работе с выбранной СУБД(если уж позарез надо реализацию на СУБД).
3. почти никакой зависимости от платформы при использовании oo.Calc
4. разрабатывая SQL-запрос, Вы будете оперировать хорошо известными Вам сущностями из Вашей предметной области, просто синтаксис будет немного непривычный.
5. такой прототип без лишних проблем с установкой, совместимостью и т.д. можно легко передавать на тестирование, демонстрацию, ознакомление.
6. листы с таблицами и запрос можно в некоторой степени "защитить от изменений" (см. соотв. справку)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 04 Сентябрь, 2009 12:17 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
Valery Solovey писал(а):
Блэкбокс работает с базами данных через ODBC. Таким образом, Вы можете использовать любые источники данных, к которым может обращаться ODBC. CSV, вроде бы, работает в Винде без установки дополнительных драйверов.

Хочу обратить внимание на то, что Штирлиц разработал драйвер FireBird для ББ. http://forum.oberoncore.ru/viewtopic.php?f=5&t=1648
Я не знаком с MySql, но знаю на практике, что СУБД FireBird очень полноцення вещь, при этом довольно проста в исрользовании


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 07 Сентябрь, 2009 14:13 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 109
Откуда: Саратов
Программирование - заразная вещь. Все выходные был потерян для семьи.
Начал делать программу для анализа текста УК и формирования на его основе базы данных. (формируются записи, включающие в себя номер раздела, номер главы.) Аналогично планируется разбор текста статей (там есть части, пункты и санкции). У меня есть опасение, что гланды были удалены перректальным способом, (не разобрался со сканнером) но, начало положено. Хотел бы услышать критические замечания по тексту программы.
В процессе возникла мысль
- может не заморачиваться с базой данных? Просто считывать все записи из файла в массив и работать с ними в памяти. Займет это 1 (, ну максимум -2 ) мб


Вложения:
Комментарий к файлу: в архиве - есть текст УК, который требуется для разбора
Proba.zip [73.98 КБ]
Скачиваний: 219
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 07 Сентябрь, 2009 16:56 

Зарегистрирован: Среда, 14 Ноябрь, 2007 19:03
Сообщения: 1314
Мой вам совет - сделайте на Turbo Delphi Explorer. Он бесплатен, а если взять недопатченную версию, то и сторонний инструментарий поставить можно.
Цитата:
В процессе возникла мысль
- может не заморачиваться с базой данных? Просто считывать все записи из файла в массив и работать с ними в памяти. Займет это 1 (, ну максимум -2 ) мб

А это до лампочки, не ищите легких путей с Обероном.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 07 Сентябрь, 2009 19:04 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9139
Откуда: Россия, Орёл
Уважаемый Клоп, хватит разводить тут чёрный пиар. Совсем недавно Вы были другого мнения :)
Как модератор, выношу предупреждение за "эксцентричность обсуждений". Откройте ветку "Мои впечатления..." - и там изложите всё внятно. А то Вас трудно понять - то нравится, то не нравится.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 07 Сентябрь, 2009 19:11 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9139
Откуда: Россия, Орёл
Бытко Сергей писал(а):
Программирование - заразная вещь. Все выходные был потерян для семьи.
Начал делать программу для анализа текста УК и формирования на его основе базы данных. (формируются записи, включающие в себя номер раздела, номер главы.) Аналогично планируется разбор текста статей (там есть части, пункты и санкции).


Я думаю, что у Вас дело пойдёт на лад :) Сейчас некогда проверять Ваши циклы; сами почитайте d http://oberoncore.ru/wiki/start раздельчик про паттерны циклов, и сверьте - что-то наверняка упростится.

Кстати, про примеры - F1 - Обучение на примерах, не забывайте. Там есть, что посмотреть.

Цитата:
- может не заморачиваться с базой данных? Просто считывать все записи из файла в массив и работать с ними в памяти. Займет это 1 (, ну максимум -2 ) мб


С базой данных заморачиваться ни в коем случае не надо (если что, это всегда успеется).
Считывать в массив тоже не надо - можно сделать Ваш список непосредственно сохраняемым в файл, если Вы элементы списка расширите от типа Stores.Store (хранимый объект) и научите элемент записываться.

По поводу скорости (поисков и т.п.) на первом этапе тоже заморачиваться не следует. Сойдёт даже простой линейный. Если будете группировать иерархически и искать в конкретном разделе, то вообще и проблем нет.

По поводу Stores - посмотрите модуль ObxStores.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 07 Сентябрь, 2009 22:28 

Зарегистрирован: Понедельник, 12 Декабрь, 2005 22:44
Сообщения: 85
Откуда: С.-Петербург
Бытко Сергей писал(а):
  • Меня не оставляет идея сделать ... экспертную систему
  • Экспертная система, как я понимаю, должна обеспечивать, с одной стороны, удобное пополнение базы данных по уголовному праву, а с другой - собственно выдачу информации, облегчать принятие окончательного решения.


Примечание. Начнём от печки, а именно постановки задачи - это нулевой важнейший этап. Далее понять сущность решаемой задачи и математической или лингвистической модели - это первый этап. Обзор информационных материалов по теме - это второй этап. Обычно здесь мы уже находим группы людей, которые давно и основательно изучают эту тему. Выбор инструмента, т.е. программного инструментария для реализации сформулированных задач

Вы начали с конца, т.е. с программного обеспечения для кодирование решения задачи по созданию экспертной системы из области "искусственного интеллекта".

Вы точно утверждаете, что для решения задачи необходимо использовать математический аппарат экспертных систем?

После внимательного изучения задачи возможно задачу можно решить стандартной базой данных и тогда и BlackBox можно использовать или другую базу данных.

В случае вывода о том, что только экспертная система поможет рекомендую изучить литературу, например:
1. К. Таунсенд, Д. Фохт , Проектирование и программная реализация экспертных систем на ПЭВМ // [электронный ресурс] - 1990 г. - http://www.forth.org.ru/~kp/taunsend.zip
2. Нейлор К., Как построить свою экспертную систему // [электронный ресурс] - 1991 г. - http://ihtik.lib.ru/dedic_homelab-mehmat_29sept2007.html (см. в списке для закачки)
3. Панкова Л.А. и др. - Организация экспертизы и анализ экспертной информации. // [электронный ресурс] - 1989. - http://ihtik.lib.ru/dedic_homelab-mehmat_29sept2007.html (см. в списке для закачки)
4. Нейлор К. (C.Naylor), Как построить свою экспертную систему // [DjVu] [электронный ресурс] -1991. - http://www.academ-sam.spb.ru/zips/expert_systems.rar
5. Системы искусственного интеллекта: Учебное пособие: в 2-х ч. Ч.1 - http://window.edu.ru/window_catalog/redir?id=29355&file=nstu95.pdf
6. Искусственный интеллект (сборник книг на русском) // [DjVu] [электронный ресурс] - 1989. - http://torrents-ru.com/showthread.php?t=15667

Универсальные языки не всегда позволяют лаконично, а значит быстро выполнить создание тестовой экспертной системы. Можно начать с классики [4] "Как построить свою экспертную систему".В этой книге используется "дедушка языков" Basic и приведены исходные коды простой экспертной системы.

Народ уже прошёл некоторый путь и выложил готовую экспертную систему
"
Домашний доктор 2.2 - Домашняя медицинская экспертная система. Данная программа, определяет характер Вашего заболевания, основываясь на ответах, полученных от Вас на поставленные программой вопросы. База знаний включает порядка 100 распространенных заболеваний. База данных для экспертной системы была взята из книги: К.Нейлор "Как построить свою экспертную систему". Система предназначена только для первичного определения характера заболевания, когда еще нет возможности проконсультироваться со специалистом. При первой возможности следует обратится к врачу, вне зависимости от поставленного системой диагноза.
"
Скачать здесь - http://www.academ-sam.spb.ru/zips/medic.zip

Не смущайтесь что про медицину. Это оболочка экспертной системы. И её можно заполнить тестовым примером законов из УК.

Когда будет полностью ясно КАК решить задачу закодировать в код на одном из языков сделает и школьник. :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 08 Сентябрь, 2009 11:13 

Зарегистрирован: Среда, 14 Ноябрь, 2007 19:03
Сообщения: 1314
Цитата:
Уважаемый Клоп, хватит разводить тут чёрный пиар. Совсем недавно Вы были другого мнения

Я и сейчас другого мнения. Просто я явственно вижу массу проблем.Это мое "мнение".Черный пиар... :D
Была еще книженция вроде : "Программирование экспертных систем на Паскале". Тоже старенькая.
Илья мы не на балу - нравиться , не нравиться, а на обероне :!: :D :D :D


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 24 Сентябрь, 2009 23:10 

Зарегистрирован: Среда, 13 Май, 2009 21:05
Сообщения: 109
Откуда: Саратов
Прошу прощения за относительно долгое молчание. Просто кончился отпуск и началась работа(((. Начал делать базу тегов к составам, точнее не базу, а одну таблицу. Структура ее такая: № статьи, № части, № пункта, вид тега, собственно тег (или тэг?). И вообще, слово тег какое-то не наше, может есть какая-нибудь адекватная замена?
С чем столкнулся. - ошарашил размер таблицы. Я прикидывал значительно скромнее. Сейчас расставил теги для статей от 105 (убийство) до 131 (изнасилование). Получилось уже около 800 (!!!) записей. Появилась необходимость в добровольцах-помощниках. Сейчас попробую среди студентов заагитировать кого-нибудь в помощники, а то буду до морковкина заговенья делать эту базу)))

PS Идея поиска информации по тегам мне кажется очень перспективной и для других направлений. Впрочем, это наверное уже используется?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 25 Сентябрь, 2009 08:38 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3064
Откуда: Астрахань
Мой совет: ограничтесь пока тем, что уже расставили. Сделайте на этом прототип. Потом подумайте над инструментом автоматизации расширения.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 54 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB