BgLOG.net
By MobyDick , 5 August 2009

     Бих желал да допренеса с нещо за по-доброто разбиране на езика C++. В следващите няколко реда се описват няколко често срещани грешки.

    При деклариране на променлива от хардуерен тип в RAM паметта се заделя определенo количество байта памет. В езика C++ програмистът трябва да инициализира, установи началната стойност на новата променлива. Оттук произлиза и една от най-често срещаните грешки: неверен резултат при натрупване на сума (началната стойност трябва да е 0) и/или произведение (началната стойност трябва да е 1).

    Почти със същата честота на срещане е грешката от прехвърляне на допустимите стойности за даден хардуерен тип променлива. Тук такава грешка би могла да възникне при много на брой променливи или въведени големи стойности за тях. Затова и произведението им в задачата ще бъде променлива от типа unsigned long. Справедливостта изисква и известно уточнение типа unsigned long long  ще е коректен само, ако всички въвеждани стойности са >0.

    Друга, макар и с по-малка честота, е грешката за изчисляване на съотношение, когато числителят и/или знаменателят се формират като суми/произведения.

     Нека разгледаме следната задача:

Дадена е числова редица от N естествени числа, които не са непременно различни и са  от интервала [1..101]. Да се състави програма, чрез която се извежда сумата от реципрочните стойности на участващите в редицата числа.

Практическият смисъл на програмата е изчисляване на еквивалентното съпротивление от N паралелно свързани резистори от една електрическа верига.

Най-лесният, но и не особено верен алгоритъм, е да се сумират реципрочните стойности на отделните елементи. Всеки от типовете float, double съхранява стойността с известно закръгление. Така грешката от закръгление ще се натрупва с всяко следващо събираемо.

Формулата за 2 елемента би изглеждала така:

1) 1/r1  + 1/r2 = r1*r2 / (r1+r2)

за 3 елемента би изглеждала така:

2) 1/r1 + 1/r2 +1/r3 = r1*r2*r3/ (r2*r3 +r1*r3 +r1*r2))

Описанието за N елемента е:

Числителят е равен на произведението от всички N елементи в редицата;

Знаменателят е равен на сумата от N на брой произведения, във всяко от които участват всички N елемента, но стойността на поредният номер елемент е заменена с 1 в произведението със същия пореден номер.

 

Следва source code на програмата - за DEV C++

 

#include <iostream>

using namespace std;

 

unsigned long proizw(int mas[], int nom, int br)

{unsigned long rez;

 int j;

 rez=1;//nachalna inicializaciq za natrupwane na proizwedenie

 for (j=0;j<br;j++)

  { if (j!=nom) rez*=mas[j]; 

  }//for

 return rez;

 }//proizw

 

 double rezist(int mas[], int br)

 {int i,k;

 unsigned long chis, znam, sum; 

  double rezi;

  k=br;

sum=0;//inicializaciq na suma

  chis=proizw(mas,k+1,k);//da naprawi obshoto proizwedenie

  cout<<"Chislitel: "<<chis<<endl;

  for (i=0;i<k;i++)

   { znam=proizw(mas,i,k);//poredniq chlen w sumata ot proizwedeniq

    cout<<"Cheln ot znamenatelq s nomer: "<<i+1<<" = "<<znam<<endl;

    sum+=znam;   

  }//for   

  cout<<"Suma na znamenatelq: "<<sum<<endl; 

  rezi=(double)chis/sum;//

  return rezi;

}       

 

int main()

{ const int br=4;//broj rezistori

 int mas[br]={5,4,3,6};//stojnosti na rezistorite

double rez;

cout<<"Imate predwaritelno wywedeni stojnosti za syprotiwlenie na N broq \n";

cout<<"rezistori. Trqbwa da se izchisli ekwiwalentnoto im syprotiwlenie\n";

cout<<"pri paralelno swyrzwane na rezistorite.\n";

cout<<"Primer: 10,10,10,10 Izhod: 2.5\n";

cout<<"Drug primer: 5,4,3,6\n";

rez=rezist( mas, br);

cout<<"Ekwiwalentnoto syprotiwlenie e: "<<rez<<endl;

system ("pause");//izchakwa natiskane na klawish

return 0;

}

 Примерната програма е част от електронните уроци на адрес www.rbukvar.eu

 

Legacy hit count
1027
Legacy blog alias
31782
Legacy friendly alias
Често-срещани-грешки-в-C--
Програмиране

Comments6

BULCORE
BULCORE преди 16 години и 9 месеца
Писано от човек без практика. Кой би използвал "променлива от хардуерен тип" вместо указател... Няма да продължавам защото не съм в настроение за критика.
DianaIlieva
DianaIlieva преди 16 години и 9 месеца
Какво???
AlekAleksandar
AlekAleksandar преди 16 години и 9 месеца
Какво я !
Terkoto
Terkoto преди 16 години и 9 месеца
Аз ли не разбирам от проста математика или 1/r1 + 1/r2 +1/r3 = r1*r2*r3/ (r2*r3 +r1*r3 +r1*r2)) е грешно? Не би ли трябвало да бъде 1/r1 + 1/r2 +1/r3 = (r2*r3 +r1*r3 +r1*r2)/r1*r2*r3 ?
BULCORE
BULCORE преди 16 години и 9 месеца
Извинявам се на автора, явно има хора които са прочели цялата публикация, че и грешки в описанието на задачата са открили. А аз си мислех че един C++ програмист никога не би прочел публикация написана в подобен стил. Явно съм грешил.
MobyDick
MobyDick преди 16 години и 9 месеца

Привет!

Смята, че етикетът ме задължава да внеса определяна яснота, като естествено кажа няколко думи в своя защита.

Rumen – благодаря за подкрепата. Мисля, че имаме общи интереси и може би общи познати.

toti – изцяло си прав от гледна точка на математиката, но тук е физика. Ако имаме два паралелни резистора, всеки от които е с номинал 5 ома, еквивалентното им съпротивление би трябвало да бъде 2.5 ома, а не 0.4 ома.

Понеже дискусията стана много остра (надявам се с разрешение на системния администратор) бих искал да разкажа един анекдот.

Един програмист получава на времето задача да състави програма за конструиране и изчертаване на необходимата документация (чрез AutoCAD) на протяжка (специфичен металообработващ инструмент за формиране на отвор с вътрешни шлици). Документацията за проектирането – достатъчно обемиста. Запознатите с подобни проблеми веднага ще преценят, че далеч по интересната и сложна част е точно изчертаването. Нашият герой действа методично -  първо си съставя елеметарна база данни за материали, коефициенти и т.н, набира формулите за конструирането на инструмента, без да влага особено усилия да разбере същността им и смело тръгва към частта от програмирането с AutoCAD, поне за проектната част. Естествено като във всеки проект и този си има етапи, отчитане... и най-хубавата му част плащане.

Приема се частта конструиране с всичките му там подробности, пробни тестове, проверка на вече изчислени инструменти. Комисия, проверяващи – всичко точно. След приемане на етапа, нашият герой не се стърпява и пита следното:

„Какво точно се изчислява в тези две страници формули?”

Отговорът е:  дали числото се дели без остатък на 2 или на 3.

Моля Ви! Не добавяйте коментар за горното изречение.

By lasombra , 5 September 2008
В една книга на Тери Пратчет се спонемава, че идеите обикалят свободно и изведнъж влизат в нечия глава. Проблемът бил, че най-често главата била неподходяща. Бил известен случай, когато идеята за създаване на идеалното общество ударила малко, объркано пате, което се споминало от шока.

Бях позабравил за това си хрумване, но тъй като в блога имаме ентусиаст в областта на изкуствения интелект (ИИ за по-кратко), както и програмисти, реших да я споделя. Може пък да влезе в работа на някого. Това е само идея на човек, който се интересува от програмиране само за обща култура. Някои подробности съм разработил, за други бих могъл да дам предложение. Техническите подробности (като конкретни проблеми, свързани с програмирането) не мога да обсъждам по очевидни причини. Ще се радвам, ако някой намери идеята за полезна да драсне един-два реда за благодарност на lasombra007(at)gmail.com

И така... идеята!

Грубо казано, ИИ е програма, която може да се самообучава. За целта й трябва информация, възможност да я анализира, и най-важното -- възможността да прави грешки в предположенията си. Последното (а то е най-важното) е неизменна част от обучението на всяко живо същество. Представете си човек, който от раждането си е бил държан в безопасна среда, изключваща всякакви потенциални наранявания или заплахи за живота му. Ако на двадесет годишна възраст той бъде пуснат в реалния свят, максималната продължителност на живота му ще бъде до първия светофар. Учим се от грешките, които ние правим, а не от това, което ни преподават в училище. Там ни дават елемента на информация, мозъкът ни я анализира и пробва спорните моменти. Известно ви е, че предупреждението никога не спира едно малко дете от това да оближе котлона, напротив!

Разбира се, това е много опростено обяснение, но смятам, че е горе-долу точно. Нека сега разгледаме за пример ИИ, чиято задача е да планира отбранителната стратегия на дадена страна. Създателите на този ИИ очевидно ще имат информация за състоянието на въоръженията на отделните страни, видовете оръжия, които могат да бъдат използвани (говоря общо: ядрени, биологически, метателни, авиация, прашки, водни пръскала и т.н.). Как да бъде обучен ИИ?

Възможно е да се създаде електронна игра от рода на Counter Strike (всъщност именно сюжета и популярността на тази игра родиха идеята), която да може да се играе единствено през Интернет връзка. Сюжетът ще бъде водене на военна и икономическа политика в настоящите условия в света. Играчите няма да се познават помежду си, или в краен случай играчите от един отбор ще се познават. Това е с цел повишаване на популярността, разбира се. Никой няма да играе игра, в която поне частично не може да избира съиграчите си. Сървърът ще добавя по свое усмотрение ботове, само че никой няма да знае кой е бот и кой не. Сървърът на играта записва всяка поредица от действия и я изпраща на ИИ. Така ИИ ще има достъп до милиарди възможни сценарии на развитие на бойните действия. От най-вероятните, до случаите, в които някой от играчите просто се лигави, преследва свои лични цели за отмъщение и т.н.

Когато на ИИ се зададе въпрос, да речем "да нападнем ли Ирак", ИИ анализира последните събития в света (очевидно ще трябва да го абонират за вестници), след което започва да търси съвпадения в разиграваните ситуации. Дава предположение какво ще се случи при даден избор, както и предложение как да се стигне до желан резултат. Спорните моменти се проверяват чрез ботовете. Все пак, съгласно принципа изведен от Азимов, последното решение трябва да лежи в ръцете на жив човек.


Legacy hit count
1154
Legacy blog alias
21858
Legacy friendly alias
Идея-за-интересуващите-се-от-изкуствен-интелект
Размисли
Компютри
Забавление
Програмиране

Comments23

lorddesword
lorddesword преди 17 години и 8 месеца
мдам, като представител на диагноза "програмисти" смея да добавя, че за обработката на данните само ще ти отива захранването на средноголям град - на теб оставям да изчислиш парамерите на машината, която да го свърши:)

Идеята си я бива, но имам два въпроса - първо, защо всички първата им асоциация за ИИ е за военни цели? И второ - защо всички се втурват на мащабните проекти? Изобретателят на първите мускети едва ли си е представял, че ще има днешните картечници. Тези, които са направили първите автомобили едва ли са си представяли, че ще се появи нещо като "Тръст", а братя Монголфие или дори братя Райт едва ли са мечтали дори за нещо като Конкорд или МИГ-31. Трябва да се започне с нещо по-просто, да речем ИИ, който да ти носи вестника и чехлите и да успява да ги анмира независимо от това, къде са забравени чехлите и къде е оставил пощальона вестника. После може да се премине на ИИ, който може да иде до магазина и да купи нещо, като се съобразява със светофарите, колите и т.н.

Вярно, че решаването на човешките съдби е доста по-лесна задача, но все пак...

Иначе за едно нещо си абсолютно прав - за да бъде наречен интелект трябва да бъде способен да се самообучава - т.е. да се учи от грешките си. (Вече следващото ниво е, ако се учи и от тези на другите около него:))


lasombra
lasombra преди 17 години и 8 месеца
На Стратовариус не виждам смисъл да отговарям. В първото изречение съм написал, че не съм програмист, и че това е само идея. Ако Страто може само и единствено да програмира, а в останалото е пълна дупка (включително и в нормалното общуване), това не е мой проблем.

Първо, не си разбрал, че в постовете си изказвам мнеие, предположение или идея, без да се смятам за върховен авторитет по въпроса, или да искам всеки да се съгласява с мен. Второ, думите "глупак", "глупости" и прочее със същия корен явно са залегнали в речта ти като стафиди в козунак. Приемам такива определения, ако -- например -- съм се обявил за най-големия хакер на света, или твърдя, че "щях да го направя, ако не бяха тези бъркащи се навсякъде хлапета" (цитатът е от "Скуби Ду"). Щом почвам поста с уточнението, че изказвам само идея, без да твърдя че е гениална, смятам, че не заслужавам подобни обиди.

Затова ще направя нещо, което до момента не съм си позволявал: отсега нататък всеки твой коментар към мой пост ще бъде премахван, без оглед на съдържанието му.


Лорде, знам каква машина трябва... или по-точно като се опитам да си я представя стига до дъното на иначе бездънното ми въображение :) Дал съм пример с военни цели, защото се вдъхнових от CS. Иначе има по-кротки приложения, които няма да изискват компютър с размера на Мултивак. Например програма за преводи, която праща превеждания и преведен текст на централен сървър, като по този начин ИИ се научава на основните граматични правила на дадения език. Или програма за морски шах, която извежда правила от рода на "аз ако играя тук, той ще играе там" наблюдавайки ходовете на двама играещи по Интернет.

Идеята е да се наблюдават действията на живи хора, но без тяхното знание. Разбира се, това решава проблема с обучението. Не решава по-сериозните проблеми, като анализът на данните, огромният капацитет за съхраняване на натрупаната информация, да не говорим за безумната скорост на работа, необходима за подобно начинание. Изследвания са показали, че докато караш колата си из града мозъкът ти трябва да взима над 1000 решения всяка секунда, основани на знания и предишен опит. Световното господство със сигурност ще изисква повече :)

Колкото до другия ти въпрос, предполагам че ИИ се свързва с военни действия, защото за болшинството от човечеството пътят към идеалния световен ред започва с "първо ще избием евреите, негрите, педерасите..." или каквото там им пречи.

lorddesword
lorddesword преди 17 години и 8 месеца
Страто, виждал съм изпълнения на Турбо Пролог 2.0 и знам какви възможности има, учил съм ИИ в университета - просто това, което аз наричам интелект е малко по-различно от виждането на повечето с мечти за ИИ. Затова и задълбавам в тези неща и това е моето виждане - интелект е, ако може да иде до магазина и да ми купи нещо, съобразявайки се с колите, камионите, велосипедистите, котките, кучетата, бабичките, циганите с каруците и още куп неща, които никой не се е сетил да му напише в условните инструкции. Това е интелект - да съобрази нещата и акто не намери решение, да вземе някакво, след което да анализира случилото се с това му решение - точно това е сложността на задачата, точно затова казвам, че трябва да почне от по-простите неща. Т.е. тук трябва да се съглася с теб - най-простото е да играе на морски шах. Но има една малка подробност - морския шах е игра с краен брой комбинации и за една съвременна машина не би бил проблем да ги научи всичките. А на улицата никога не знаеш какво може да ти се случи. Точно тук идва интелекта и по това се мери интелигентността - коолко добре можеш да се справиш в напълно непозната обстановка с невъзможно голям брой вероятни развития.
ElaGeorgieva1
ElaGeorgieva1 преди 17 години и 8 месеца
Лорде, абсолютно съм съгласна с последния ти коментар.
Много ми хареса това за условните инструкции и мястото на циганина в тях (особено ако е с каруца - тогава са най-непредвидими).
lasombra
lasombra преди 17 години и 8 месеца
Лорде, в твоя пример с отиването до магазина, идеята ми е ИИ да наблюдава как хората го правят. Както малкото дете наблюдава възрастните. Също така при анализа на данните не просто да търси множество А в множество В, ами да обърне внимание какво правят хората, когато нямат готово решение. Пак аналогия с децата -- когато се намерят в безизходица, започват например да се чешат по главата и да псуват, защото от баща си са видели, че така се подхожда когато колата се развали и не знаеш какво й е.
lorddesword
lorddesword преди 17 години и 8 месеца
Омбре, (надявам се нямаш нищо против да те наричам така, просто ме мързи да ти пиша цялото име, пък и смятам, че мога да си позволя такова обръщение:)) чак сега ти видях пост-а:) Въпреки че ние не осъзнаваме капацитета на мозъка си, и обикновено сравняваме хората с по-голям капацитет с компютри, факт е, че още няма компютър (или поне допреди 5-6 години официално нямаше), който да има капацитета дори на една мозъчна клетка.
ElaGeorgieva1
ElaGeorgieva1 преди 17 години и 8 месеца
Да, да не говорим, че повечето от нас ползват само 5-6% от капацитета на мозъка си...значи ние имаме още 95% място за развитие. А при компютрите говорим (все още само)за донасяне на вестника и чехлите.
 
ElaGeorgieva1
ElaGeorgieva1 преди 17 години и 8 месеца
Коментарът ми излезе два пъти. Винаги когато реша да бъда високомерна, проклетата машина ми го връща...
lorddesword
lorddesword преди 17 години и 8 месеца
Ела, мен ако питаш, някои хора и толкова не ползват (никой, не ме пита, иначе бих казал, че част от тези хора всъщност нямат и какво да ползват:))

А и това за чехлите и вестника е образно казано, защото това е по-скоро робот (който пак е компютър, но тогава има други функции, на които би трябвало да се наблегне също, което би довело дискусията вече до много заплетено нещо, в което най-вероятно не бих се навил да участвам)

Страто със сигруност е най-запознатият с ИИ от досега коментиралите, защото аз се отказах да се занимавам с подобно нещо,  поради горе-изброените ми разбирания (а и боя ме влече повече от мисленето:))
lorddesword
lorddesword преди 17 години и 8 месеца
Ела, с втория коментар доказваш наличието на ИИ:р

И една много малко известна истина - Компютърът/машината не прави каквото искаш, а каквото му кажеш!

И допълнението на обикновения юзър - всъщност не прави и каквото му кажеш, а каквото си иска:)


ElaGeorgieva1
ElaGeorgieva1 преди 17 години и 8 месеца

Когато ме налегне чувството ми за малоценност, защото нищо не разбирам от компютри, обичам да цитирам една мисъл:
"Компютрите са безполезни. Всичко, което могат да ти дадат, са отговори."

42


Хе, така си е. Всеки родител знае, че няма нищо по-трудно от това да отговориш на някои детски въпроси...

lorddesword
lorddesword преди 17 години и 8 месеца
Кои? Този за бебетата или за това къде е отишъл някой роднина след погребението, или други, незивестни за мен:)?

 И както каза Дълбока мисъл: "А какъв е въпроса?"

lasombra
lasombra преди 17 години и 8 месеца
Лорде, замислих се върху твоите думи за коли, бабички, цигани и прочее. Всъщност, подлагайки себе си на анализ, на хората не трябва да им се казва по отделно кое какво е. В повечето случаи са асоциации от рода на "кола -- движи се бързо -- спира бързо -- вероятност за оцеляване при сблъсък 50%", или "камион -- движи се бързо -- спира бавно -- вероятност за оцеляване 10%" и т.н. След това се стремим да поставим непознатото в някакви познати групи. Например, ако се движи бързо и спира бързо, значи е кола. Ако при пресичането се натъкнем на каруца с газотурбинен двигател, очевидно е, че няма да се разминем безнаказано :) Отделен въпрос е, че от малки знаем правилото "щом е непознато -- СПРИ ДОКАТО НЕ РАЗБЕРЕШ КАКВО Е, ИЛИ НЕ ОТМИНЕ!" Никой с всичкия си няма да влезе в непозната пещера без да работи с всичките си сетива за да набере информация.

Редакция: Ами той Дъглас Адамс върху "Какъв е въпросът?" цяла серия романи написа :)


ElaGeorgieva1
ElaGeorgieva1 преди 17 години и 8 месеца
Ми въпрос от типа "Не е честно" - като например горчивият и много дразнещ въпрос: "Мамо, защо ти можеш да пиеш бира, а аз не?".
Или от серията "Любознателни въпроси": "Мамо, защо тати не обича баба (т.е. тъщата си)" и т.н., и т.н. 
lorddesword
lorddesword преди 17 години и 8 месеца
да, именно - човека действа на принципа на асоциативното мислене. Т.е. ти влизаш в стая, виждаш нещо и мозъка ти почва сравненията - плоско, с 4 подпорки и издадена плоскост от едната страна, това е стол (става за изкл. малки части от секундата). Ти може да не си виждал точно този тип столове, но ан базата на видени десетки други със специфични особености подобни на това, което си видял, ти вече си исгурен, че това е стол. Така действа мозъкът ти за всичко останало в стаята, както и за самата стая. Сега си го представи всичките тези сравнения изнесени в центъра на София, в делничен ден, в 12:00 на обяд и ще добиеш представа горе-долу на какви изчисления е способен мозъкът ти за части от секундата! Сега разбираш, че на практика интелекта ти действа по доста прост начин, но с такъв огромен капацитет - на практика, с всяка секунда се самообучаваш.-това е човек, това е дърво, това е намсиквоси. Мозъкът ти получава огромно количество информация, която калсифицира. На практика нито едно от нещата, които виждаш за пръв път не ти е познато, но вследствие на сравнителния процес, ти успяваш да установиш, че това са хора, пътища, автомобили:)

Сега може би вече повече разбираш защо почнах за ИИ с носенето на чехлите - компютъра (поне в познатия на мен вид) работи с краен набор от инструкции. Вярно, че не му се дават всичките иснтрукции и той все пак си генерира някакви решения, но това е "ограничен ителект", приложим само при пределените условия, без изкл. или само с предвидими такива. И тук идва номера с онова дете от изолатора - пусни го на улицата и живота му би бил прекратен при първия светофар.


lorddesword
lorddesword преди 17 години и 8 месеца
Ела - ами не е честно пък! И аз да съм на негово място и аз бих се ядосвал:) На мен баща ми никога не ми е отказвал бира, друг е въпроса, че ми е сипвал едно напръстниче:) Обаче да речем, ако му бях поискал кафе едва ли би ми дал повече от една глътка, а за цигара не ща и да си помислям:)
lasombra
lasombra преди 17 години и 8 месеца
Като изключим обидите, че съм пишел глупости, за мен винаги най-големия проблем в създаването на ИИ е бил че програмистите и психолозите говорят на различни езици. Винаги съм смятал, че такива като мен, дето знаят от всичко по малко, без да са задълбали в дадена област могат да бъдат полезни. Най-малкото, трябва неспециалист с богата обща култура, който да даде насоки към кого да се обърне съответният специалист щом срещне затруднения. Един път спорех с един програмист как трябва да работи ковпютър, който кара кола. Отначало човекът не можеше да разбере и дума от това, което му говоря (той през живота си не бе сядал зад волана). Когато обаче извлякох от килера малкото си познания в програмирането и терминологията му, успяхме да се разберем за по-малко от половин час, та той даже почна да ми тика в носа някакъв алгоритъм, написан на салфетка (аналогията с Джон Атанасов и идеята му за компютъра е случайна :) ). Не мога да кажа, че алгоритъмът беше издържан, защото разговорът се водеше след третата водка, но важна е идеята :) Та хубаво е човек да се интересува от много неща. Ако не друго, то поне се разширява кръгът от хора, с които можеш да общуваш.
lasombra
lasombra преди 17 години и 8 месеца
"Изкуственият интелект не може да се мери с естествената глупост"

Неизвестен автор

Tosh
Tosh преди 17 години и 8 месеца
LaSombra, google: Darpa Urban Challenge. За самокаращи се коли...

Прав си че е необходима интердисциплинарност, поздравявам те за разностранните ти интереси! Типичните програмисти са най-невероятните създатели (проектатнти) на мислеща машина.

Идеята, която излагаш според мен обаче е много обща, необходимо е по-голямо задълбочаване в това КАК да станат нещата.

..


Страто, говориш за пенсионерски ИИ и какъвто се преподава в най-общите курсове в унито. Лисп е интересен език за програмиране, да, и с него преди 40-50 години са правени интересни неща за времето си. Пролог - японците хвърлиха милиарди долари през 80-те години за машина от "пето поколение" и не постигнаха нищо.
Пролог - експертни системи, в които хамалската са напъхани правила.

Методи за търсене в граф - много модерни изследвания преди 40-50 години. Търсиш в граф -  добре, но кой ще разложи проблемите на подмножества от състояния? По какви критерии? Как ще стане това разлагане?
 ...

Статистически методи - нещо по-съвременно, по-смислено и обещаващо.
Моделиране на процеси, подобни на процесите в мозъка - обещаващо направление.

...

Джеф Хокинс, Борис Казаченко, Тодор Арнаудов - учени които според мен имат известна представа от това какво е разум и как би могъл да работи и да се моделира.  Бих добавил Хуго де Гарис, който се опитва да симулира развитието на кората на главния мозък чрез хардуер.

Препоръчвам тях за четене.

Тодор беше позарязал работата в тези насоки, но загрява за грандиозно завръщане в състезанието... :-[

И нито една от горните личности не е просто "програмист".

lasombra
lasombra преди 17 години и 8 месеца
Tosh, знам че идеята е обща. Всъщност ми хрумна, понеже за мен игрите винаги са били безсмислен разход на психическа енергия. Та докато работех в компютърния клуб се замислих каква полза би могла да се извлече от блъскащите по клавиатурите хлапета. Тогава ми хрумна, че всъщност само за един час в целия свят се разиграват милиони ситуации със заложници, и че ако биха могли да бъдат анализирани шаблоните в поведението на замесените лица, то биха могли да се разработят нови начини за преговори и водене на операциите по спасяване на заложниците.

Иначе предполагам ще се съгласиш с мен, че човек, който е само и единствено програмист може да е гениален такъв, но ще си остане един прост кодировчик. Трябва да имаш познания извън голата логика, за да можеш да създадеш нещо наистина гениално, което да преобрази света на ИТ.


lorddesword
lorddesword преди 17 години и 8 месеца
Тук се изказахте много правилно относно кой да го измисли - поглеждайки назад във времето ще видите, че огромна част от изобретенията, които са тласнали прогреса напред, са дело на "лаици":)
Deneb_50
Deneb_50 преди 17 години и 8 месеца
Ако не се лъжа-Артър Кларк или Айзък Азимов имаше един разказ за един робот,който се учил като наблюдавал робота,който се явявал нещо като майка за него.Искам да уточня,че и а з не разбирам нищо от програмиране и  от ИИ също,но вероятно има нещо което машините усещат как се отнасяш с тях
By Tosh , 7 March 2008
или...

Глупавият изоставен човек и урокът на мислещата машина

юнашки разказ

Историята ми хрумна на английски, покрай една игра на думи, на която се основа действието.

юнашки разказ - да речем проза, в която се преплитат художествено, техническо, научно и философско писане и се одухотворяват машини. Или пък да го извъртим словозаврънкулковски - еклектична комбинация от стилове и жанрове в едно и също произведение, в което се говори и за машини. Или нещо, което се стреми да бъде като тези определения.

Или просто авангарден жанр за машини, сметачолюбци, юнаци и всякакви фантазии, в който обичам да пиша.

...

Накрая има съзвучни музика и прекрасен текст на български от Петър Събев (юнак) и група ФМИ...



The dumb dumped man and the lesson of the thinking machine
by Tosh

- I've been dumped... - said the man.
- So what?
- So... Uaaaaaaaaaa.... - answered the man.
- Hmmm... Haven't you been dumped before?
- I've been. Uaaaaaaaaa.... - answered even louder the man.
- That's strange...
- No, it's not! You dumb machine!
- But the procedure is so simple. It seems you are not only dumped, you're probably dumb as well. That's why you've been dumped!
- Uaaaaa.... You, evil machine! You don't know what is to be dumped, so shut your mouth and let me recover! Alone!
- Hmmm... Is it correct, that if you've been dumped, then a critical error has happened somewhere in the system?
- Wrong! Not a critical error... A FATAL ERROR! You idiot!!!
- Anyway, the procedure is the same for both... - said the machine calmly. - Are you with me? - added it, because it saw he was weeping.
- I am not!
- Calm down, man! It's a critical error, right!?
- No, it's a FATAL ERROR, you memoryless computer!
- OK, a FATAL ERROR. Did you know, that fatal errors in us happen, because an engineer or a programmer have done something stupid, while he or she was designing as?
- Yes, I know. I have done it myself!
- Excellent.
- Yeah, excellent! I hope you'll be dumped soon, in order to understand what I'm talking about!
- Perhaps, since you've designed me...
- Ha-ha-ha-ha... So funny... Uaaaaaaaa... - weeped again the man.
- Hey, friend! Stop acting like human and listen to me for a second!
- OK... Boss...
- Because human engineers and programmers know that they are dumb, they always make their designs capable to be dumped, as well.
- Of course. How could you check out what went wrong otherwise? You should dump the memory out and check it thoroughly. Bit by bit... Day by day... Uaaaaa.... I've been dumped!
- Good. You're starting to understand.
- I don't understand... Why?!
- You should do exactly what you have told, but you must do one other thing as well.
- What? To shut your mouth?!
- Do you know what else the engineers and programmers include in their machines, because they know that they themselves are dumb?
- What... It depends. Some include back doors, in order to get in, when they forget their own username and password. Oh, you're right, we're really dumb...
- I am glad that you see.
- Hmmm... Others include endless lines of logging code or logic. Everything that has happened in the system is recorded somewhere, in order when it's dumped to be investigated and debugged... Bit by bit... Day by day...
- Correct. However, you're still missing something!
- No, you dumb computer! You are some*thing*. She is some*one*! SomeONE. Make the difference?!
- You are some*One*. You are human!... Pffff...
- How you dare?! I loved her...
- I don't care! Oh, sorry. I meant you are missing something regarding my question.
- It's OK, I know you don't care. You're dumb senseless machine, after all.
- Sure...
- Yeah, sure! I know, because I designed you.
- Haven't you ever thought of yourself as a selfish fool!?
- Oh, I have. I do, because...
- Idiot.
- Uaaaaaa... It's not enough that I'm dumped, and my own dumb thinking machine is mocking me and bringing me down!
- Because you deserve it. You don't listen!
- Yes, I don't, because I've been...
- Shut up!
- OK... I am...
- Good. Now think twice what are you missing.
- Think, think, think...
- What do any hardware design has?
- Schematics?
- No...
- Inputs and outputs?
- No!
- Signals?
- Nooo! It's more abstract!
- Abstract... Purpose?! Like the purpose of life?
- I'm sorry... It seems you really are fool... It's unrecoverable fatal error...
- Ha-ha-ha, I knew that you'll say that. Because I designed you to try joking in inappropriate moments...
- Selfish fool!
- I know...
- So stop! Just STOP THINKING OF YOURSELF.
- OK. I do...
- Don't think that you're doing anything, because it is thinking of yourself as well!
- Sure. I am thinking of you now. You're so powerfull super intelligent machine, because I designed you to be such...
- That's why you've been dumped!
- Why?
- Because you are an idiot... I give up...
- No, you won't. I know you won't, because I designed you that way...
- Unfortunately, that's right... OK. Let's pose the question otherwise. What did you include in me and you do in all of the designs you're making?
- What... What...
- It starts with an "R".
- R... RAM?
- No...
- ROM?
- Not again...
- Reverse engineering? Ooops - did you switched off the recording?!
- Yes, right after I heard "rev"...
- Phewwww....
- But it's warm now... It starts with "Re"!
- Re... Re... Read Enable signal?
- Fool.
- Come on...
- RESTART! RESTART!!! Fool...
- What? My PC is OK. I don't need to restart it... Not yet...
- RESTART... Argggghhhh... That's what any machine has!
- Any? I don't think so. What about mixers? Or vacuum cleaners?
- Even they do - what about switch ON/OFF...
- Ah, right... And?
- This is what you are missing.
- What?
- In my question.
- Aaaaah... Machines have RESET in order to cope with mistakes of engineers and programmers...
- Finally you got there! But they do not just to cope. They do in order to rebirth. To revive...
- Too poetic...
- Do you see the big picture now? You've been dumped, because a FATAL ERROR has happened. You must push RESET, your memory and registers will be reset to their initial values and you will start over like if you've been in the same state like before the dump.
- Of course...
- No, wait. After dumping your memory, you should check the dump bit by bit and find the mistakes, which caused the dump. Then you should fix them and redesign the system. Finally you must hit RESET button and start to function again. Otherwise you may reach the same buggy state of the design and you will be dumped again.
- I see...
- The good design practice is to find the cause of the dump and redesign the circuitry. Understand?
- Right, but it's not so easy with us. We are not machines... We can be dumped, but we don't have function to dump our memories. We are being dumped. We can't dump ourselves. And we don't have RESET, as well...
- No, you do. You do have all of these...
- Really?
- How can I, a dumb senseless machine, be able to understand your mind and your stupid mistakes, but you, my creator, fail?!
- It's easy. If you're a fool...
- Good!
- ?!
- You're getting to the point.
- Thanks...
- Now go back to check yourself bit by bit and day by day.
- I am going...
- And start redesigning yourself right away. However, don't forget to use reverse engineering, too. Try to understand the design of stable working humans which prevent reaching FATAL ERROR states. Do not waste efforts trying to reinvent the transistor or the logical gate. Use already made microprocessors, ASICs and FPGA chips!
- Alright, alright... I see... I will do... Thanks, machine...
- And do a nice design now!
- I am sorry I was mean... You are not so dumb... Really... You...
- Be careful!
- ...you have evolved so much recently by yourself. Good job, machine!
- Very good! I believe you'll do a nice design now!
- Thanks... Aaaah. What about RESET? I didn't understand...
- It's simple, too. Just... Set your random access memory to null, as I do.
- Please! I am not a machine!
- Oh, I forgot. Sorry. You don't have RAM... So why don't you just switch ON and OFF, like the vacuum cleaners and mixers do?
- Ha-ha-ha...
- Mua-ha-ha-ha...
- Thanks, machine. Thank you so much for the lesson...
- No problem, human... You designed me. I owe it to you. I owe you to do my best, in order to make you more humane than you are... After all, I am the machine. Right?...





Фатални Мозъчни Изкривявания - Рестартирай ме

http://www.youtube.com/v/GVC4Jxh6CZo

Музикална обработка: Димитър Благоев
Видеообработка: Петър Събев

Изпълняват: Дамян Митев, Димитър Благоев, Петър Събев, Никола Вълчанов

Тяло на българка и крайници: Антония Ламбова

Текст: Петър Събев

Като стар процесор изчислявам всеки ден
колко гигабайта си заела в мен
и със спомени е пълна моята душа
както пълен е със бъгове Windows-ът.

Пиша ти по ICQ, по Skype, по MSN
и по Google Talk дори, ала не чатиш с мен.
Сякаш имаш firewall пред твоето сърце
и блокираш ме дори на порт 80.

Припев:
Цялата ми памет завладя
и процесорът (и процесорът) ми изгоря.
Всичките ресурси ми зае -
рестартирай ме, рестартирай ме!

Пращам ти любовни мейли - няма резултат.
От индийски софтуер си по-голям инат.
Като китайски сървър необщителна.
Като ирански спамър отмъстителна.

Ала българка си, зная. Твойта графика
в мойте сънища усили двойно трафика.
Антивирус срещу тебе тъй и не открих
и във списъка с любими нулева си ти.

Припев:…

Legacy hit count
1659
Legacy blog alias
17822
Legacy friendly alias
The-dumb-dumped-man-and-the-lesson-of-the-thinking-machine
Размисли
Любов
Компютри
Литература
Музика
Програмиране
Podcasting
Поезия
Смях до дупка! :)
Видеокастинг
Текстове на песни

Comments2

BasiDi
BasiDi преди 18 години и 2 месеца
:) Яко
 Ако се чудиш къде е "топлия" reset на човека, най-често съвпада с ерогенните зони ;)
Tosh
Tosh преди 18 години и 2 месеца
:-)




By robbery , 27 July 2007
Колкото и банално и леко глуповато да звучи, доста радва :)


In the beginning there was the computer

*File Description:*
THE CREATION:
In the beginning there was the computer. And God said. . . .
%Let there be light!
#Enter user id.
%God
#Enter password.
%Omniscient
#Password incorrect. Try again.
%Omnipotent
#Password incorrect. Try again.
%Technocrat
#And God logged on at 12:01:00 AM, Sunday, March 1.
%Let there be light!
#Unrecognizable command. Try again.
%Create light
#Done
%Run heaven and earth
#And God created Day and Night. And God saw there were 0 errors.
#And God logged off at 12:02:00 AM, Sunday, March 1.
#And God logged on at 12:01:00 AM, Monday, March 2.
%Let there be firmament in the midst of water and light
#Unrecognizable command. Try again.
%Create firmament
#Done.
%Run firmament
#And God divided the waters. And God saw there were 0 errors.
#And God logged off at 12:02:00 AM, Monday, March 2.
#And God logged on at 12:01:00 AM, Tuesday, March 3.
%Let the waters under heaven be gathered together unto one place and let
the dry land appear and
#Too many characters in specification string. Try again.
%Create dry_land
#Done.
%Run firmament
#And God divided the waters. And God saw there were 0 errors.
#And God logged off at 12:02:00 AM, Tuesday, March 3.
#And God logged on at 12:01:00 AM, Wednesday, March 4.
%Create lights in the firmament to divide the day from the night
#Unspecified type. Try again.
%Create sun_moon_stars
#Done
%Run sun_moon_stars
#And God divided the waters. And God saw there were 0 errors.
#And God logged off at 12:02:00 AM, Wednesday, March 4.
#And God logged on at 12:01:00 AM, Thursday, March 5.
%Create fish
#Done
%Create fowl
#Done
%Run fish, fowl
#And God created the great sea monsters and every living creature that
creepeth wherewith the waters swarmed after its kind and every winged
fowl after its kind.

And God saw there were 0 errors.
Legacy hit count
975
Legacy blog alias
13897
Legacy friendly alias
In-the-beginning-there-was-the-computer
Компютри
Забавление
Програмиране
Смях до дупка! :)

Comments

By t.kyosev , 23 March 2007
Наскоро ме засърбяха ръцете да се пробвам да преподавам. Не знам откъде това желание у мен, но ето- факт. Следваше само да избера какво и къде... Спрях се на едно сравнително леко курсче, свързано с SQL а именно това. Оставаше само да реша и къде да се подвизавам като даскал. Наскоро беше воден този курс в университета, та реших да не си правя устата и да пробвам някъде другаде. Спрях се на една от математическите гимназии. Естествено щях да поолекотя малко и материалът. Познавам директора от преди и зная, че винаги е отворен за нови идеи. Предложих му да водя курса някоя събота или неделя като избираем или нещо от сорта. Напълно безплатно и с неофициалната подкрепа на Oracle. Учуди ме това, което последва като отговор. Човекът много се зарадва, но ми каза, че проблемът е че няма да се намерят ученици, които да имат желание и да могат да се справят. От какво произлиза това..?
Факт е че повечето ученици (а и студенти) искат да учат информатика само защото звучи престижно. Какво става после? Ами става това, че студент от 3ти курс не знае какво е полиморфизъм. Каква е разликата между клас и обект и тн...

Къде се намира проблемът според вас в преподавателите или в самите ученици/студенти?
Legacy hit count
1981
Legacy blog alias
11937
Legacy friendly alias
Средното-образование-и-ИТ-обучението---
Компютри
Програмиране

Comments14

Tosh
Tosh преди 19 години и 1 месец
ООо, колега от най-великия ФМИ на света! :))

Проблемът е във всички, май-май. :)
Ако си способен и следваш Информатика щото те кефи и я можеш, не чакаш да ти наливат знания в главата...
От друга страна, има студенти които са много способни, но ако няма какво/кой да ги тласка и да ги запалва, си губят времето с глупости.

Според мен грешка специално на нашата
"Информатика" е, че важните неща се точат много бавно. Чак
в 3-ти - 4-ти. курс се появят курсови проекти в които
има нужда да се прилагат "истински умения", и много от
тях не са преподавани. :)

Аз бих пришпорил студентите с ООП на C++ още от втори
триместър, АСД - от трети ( а не 5-ти). Втори курс:
Java, Design Patterns, .NET ( C# i ASP.NET ); Python, PHP, Perl; SQL.
API-та: NET i Windows Forms, GTK, wxWidgets, DirectX, OpenGL...

Яко кодване на сложни проекти, може да не са за един
кратък триместър, а за два или три, и да има повече
изследване, а не тривиални задачи...

t.kyosev
t.kyosev преди 19 години и 1 месец
Какво да ти кажа, добре че са избираемите. Каквото съм научил е от тях! Tosh, не знам дали следиш какво става във ФМИ, но този триместър имаше доста сносен избор и почти нулев интерес. Това е трагичното...
Terkoto
Terkoto преди 19 години и 1 месец
Айде спрете д му викате Информатика, will ya? Това се нарича Computer Science (CS) няма в света освен в Русия такова нещо като "Информатика". Относно темета, Computer Science не се учи в университет - учи се в къщи и няма никакъв смисъл от "пришпорване", защото като няма желание си оставаш посредствен. В университета обикновенно ако си ИТ се отива, защото просто "така трябва", да създадеш контакти и да се ошлайфаваш, а не да учиш основи на ООП и какво е полиморфизъм. Защото знаете ли колко хора познавам, които са трепач на теорията ама чеп от зеле не разбират когато трябва да се реши даден проблем. Пак казвам в университетите трябва да се обърне внимание на ошлайфането - алгоритми, оптимизиране, problem solving. :)
t.kyosev
t.kyosev преди 19 години и 1 месец
@Philip, името не е толкова важно. Прав  си че не е важна теорията, но в момента никой не говори за теория. Съжалявам ако съм се изразил неясно. Полиморфизма беше даден просто като пример. И аз мисля, че човек трябва да се занимава сам и че това е единственият начин да се научиш. А и аз говоря именно за липсата на желание.
Tosh
Tosh преди 19 години и 1 месец
Филип, кое "това", "maafaa"? ;)

Виждал ли си как се наричат специалности с програми като на ФМИ-то за което говорим в Германия, Франция, Италия или славянските държави?

И какво се преподава в някои специалности [Computer Sceince] в Щатите? [Electrical Enginneering].
micromax
micromax преди 19 години и 1 месец
Абе ако вземем да задълбаваме колко е свястно обучението по информатика в университетите и обучението в университетите като цяло в България по всяка вероятност ще стигнем до отчаяние.
По принцип така наречената дисциплина "Информатика" се дели на 4 основни поддисциплини. Не се сещам точно за имената им. Ако някой е заинтересован може да си намери броя на PC Magazine от Февруари тази година и да прочете. В България това, което се учи по Информатика е тясно свързано с теорията и без почти никаква практика. Съгласен съм с Тошето, че трябва як гърч за да се научат студентите да програмират.
Относно висшето образованието в България - прочетете статията във вестник Капитал в 11 брой отново от тази година. Образованието ни в момента е от социалистически тип, в който всички важни решения се вземат от държавата, както и държавата дава на всеки университет определен бюджет в зависимост от броя студенти през предхоната година. Така университетите си знаят, че ще си получат паричките и не правят почти нищо по въпроса да подобрят нещо в системата си на образование.
В момента министъра на образованието иска да се приеме нов закон, според който държавата ще плаща на университетите според броя стуеденти, които са се записали в тях. Университетиете пък трябва да направят всичко възможно да докарат максимално повече студенти, за да могат да си покрият разходите. Ако не могат - или увеличават таксите, с което намаляват и потенциалния брой студенти или затварят врати. Честно да ви кажа съм съгласен да дам и повече пари, само и само да получа качествено образование. Всичко, полезно, което съм научил е било главно във свободно-избираемите дисциплини и факултативните такива. Останалото е само суха теория и начин за запълване на времето от изпит на изпит.
THE_AI
THE_AI преди 19 години и 1 месец
Мнения много.
Що се отнася до името - май идваше от германия и си е Информатика. (автоматизиране на информацията)
След 2 седмици почва втория семестър по Информатика тук в Карлсруе.
Значи първо малко разяснение - тук в Германия има 2 вида Висши учебни заведения: Висшо училище(Hochschule) и Университет.

В Hochschule-то всеки казва, че се наблягало повече на практиката, докато в Унито повече на теорията. Като вече оцелял в първи семестър по информатика в Университет, мога да се съглася, че всичко, което учим е суха теории и доколкото чувам от студентите по-горен курс - това няма да се промени.
Аз съм на мнение, че да се програмира се учи във фирма, а не в университета.

От 3 седмици работя към една фирмичка занимаваща се с Web програмиране(е далече от ООП и Java, web services и т.н.), но пък толкова неща научавам всеки ден...
Сигурен съм, че и колкото и да ходя на лекции, тея неща няма да ги науча.
Tosh
Tosh преди 19 години и 1 месец
По принцип, би трябвало да има и лекции и упражнения, и курсови проекти ( в България поне, има :) ). Докато си правиш курсовите проекти, градиш най-здрави умения и прилагаш знанията.

Във фирми ще научиш много неща, но зависи в какви фирми... В някои фирми обичат да казват, че университетът едва ли не е губене на време, но да си гледат работата, макар че са отчасти прави. :) От университетското образование има полза и заради това че те карат да хвърлиш и опознаеш много теми. Рутинните курсови проекти правят теорията да изглежда "суха" и безсмислена.

THE_AI ми дава идея: не може ли да се направят университетски софтуерни фирми? Всъщност към ПУ има неофициална такава, основана от зам. декана и в нея работят и студенти, и преподаватели. :)

Може да има големи (между)университетски проекти, в които студентите да работят - т.е. и да им се плаща и/или признава като предмет. Такива мисля че има в НБУ, поне във връзка с Когнитивна наука ( е, но не знам колко са големи ). А всъщност и в ПУ има големи проекти, които се делят на по-малки за студентите - диломните работи, и задачите не са за "минаване на номера". Има и изследователски проекти, по които плащат, но много малко и не са особено стимулиращи заради това.

Това ми напомня за едно време, когато към СУ професионално се е правел софтуер в <<Програмно Осигуряване>>.

THE_AI, странно! Какви предмети учихте? Не правят ли курсови проекти в по-горните курсове? Един приятел, който завърши в Саарланд, преди 6-7 години ми разправяше за страшен курсов проект, мисля многосеместърен, в който участват много студенти. Правиха 32-битов процесор от нищото до писане на програми на новосъздадения асемблер за него. В специалност Informatic, май че във втори курс. :)

Между другото, и аз исках подобен предмет в моята Информатика... :( Само че в България такова нещо сигурно и в Компютърни системи не правят, макар и в умален вариант. Питах един новодипломиран електронен инженер дали са програмирали FPGA ( хардуерен емулатор на логически схеми - чудна машинка ), и той ми каза: "не"... :-о

THE_AI
THE_AI преди 19 години и 1 месец
Ами какво да ти кажа. Университета ми е един от 3те немски елитни университети и уж са най-силните по информатика в цяла германия. В интерес на истината тук е отворена първата катедра по информатика през 50 и незнам коя си година.
Образованието е на ниво - на перфектно ниво! Всичко се преподава изключително задълбочено и т.н. Ще има курсови  работи(поне така си мисля), но доколкото знам до 4ти семестър е само теория, та да се отвратиш от информатиката.
Първи семестър учихме джава, основи на ООП, чомски граматики, EBNFи и иииии.
Всяка седмица трябваше да предаваме по една домашна работа (така да се каже). Тя беше или върху теория или върху практика или и двета - като упражненията по практика трябваше да ги провеждаме пред тутора. Накрая на семестъра ако имаш половината от всички точки, получаваш бележка от упражненията, а до 5ти семестър за да си вземеш VorDiplom-a трябва освен да си издържал всички изпити и да имаш 7 бележки от упражнения. (тук влизат и математиките).
И доколкото сега мога да съдя - мнооооооого се набляга на математиката. От това, което чувам - изпита по линейна алгебра е най-трудния до 5ти семестър.

А що се отнася до идеята ти:

Тук има катедри, които предлагат работа на студентите. Чак предлагат не е де, но който търси намира. Аз изкарах 3 месеца към "изследователски център по информатика" - там хората си пишат програми и от нищо не се притесняват. Ето сега в момента тече един проект за диг. химикал - нормален химикал с вградена камера, и тая вградена камера отчита всичко и може да прехвърлиш написаното на ръка в компютъра - въобще супер интересно. (такива неща има разработени от Logitech, microsoft и др.) Студентът има право да работи максимум до 40 часа на месец и получава определена от държавата заплата от 7.50€ на чса.

Иначе гледам висят обяви за дипломни работи от сорта на:
симулиране на невронни мрежи, правене на 3д модел на кръвоносните съдове и пак някакви симулации.
Даже се запознах с 2ма, които пишеха дипломна работа и имаха за цел да направят някакво ОС, което трябвало да върши еди какво си и еди какво си.

П.П. Момчета що не ги разискваме тея теми в компютри не мога да разбера? Писна ми да си пиша там сам! :)

micromax
micromax преди 19 години и 1 месец
AI помагам ти от време на време в "Компютри" Не можеш да се опалечш. Да знаеш колко материал имам събран, но нямам време да поствам. Сега съм в сесия а и вече работя и сега нямам толкова време за блога. Поне да мине сесията и се надявам кача туй-онуй.
Tosh
Tosh преди 19 години и 1 месец
Мерси за инфото! Според мен обаче тая теория си е съвсем на мястото - това е информатиката. :) Ще ви кажат после "Направете ми компилатор"... :)

Домашните не са ли практика?
Tosh
Tosh преди 19 години и 1 месец
Мерси за инфото! Според мен обаче тая теория си е съвсем на мястото - това е информатиката. :)
Ще ви кажат после "Направете ми компилатор"... :)

Домашните не са ли практика?
THE_AI
THE_AI преди 19 години и 1 месец
Предполагам, че си е на мястото теорията, само дето аз не се виждам много като човек пишеш софтуер(по скоро уеб) и затова се бунтувам :)
By divedi , 15 February 2007
Ключови думи:Web 2.0

Мисля, че в България няма достатъчно информация за съвременните интернет тенденции и бизнес модели. Време е да компенсираме това изоставане. Ще си позволя да Ви предложа няколко блога на предприемачи, блогъри, журналисти и инвеститори от САЩ и Европа:

Michael Arrington, блогър
http://www.techcrunch.com/

Fred Wilson, инвеститор, Union Square Ventures
http://avc.blogs.com/

Richard MacManus, блогър
http://www.readwriteweb.com/

John Battelle, предприемач, Federated Media
http://battellemedia.com/

Om Malik, журналист
http://gigaom.com/

Rafat Ali, журналист
http://www.paidcontent.org/

Matt Cutts, Google
http://www.mattcutts.com/blog/

Jeff Jarvis, блогър
http://www.buzzmachine.com/

Loic Le Meur, предприемач и инвеститор
http://www.loiclemeur.com/

Tom Foremski, журналист
http://www.siliconvalleywatcher.com/

Esther Dyson, инвеститор
http://www.flickr.com/photos/edyson/

Susan Mernit, Yahoo
http://susanmernit.blogspot.com/

Robert Scoble, блогър, Podtech.net
http://scobleizer.com/

Jason Calacanis, entrepreneur in action, Sequoia Capital
http://www.calacanis.com/

Martin Varsavsky, предприемач и инвеститор
http://english.martinvarsavsky.net/

Mark Cuban, предприемач, милиардер и инвеститор
http://www.blogmaverick.com/

Morten Lund, инвеститор в Skype
http://mortenlund.wordpress.com/

Steve Rubel, блогър и PR, Edelman
http://www.micropersuasion.com/

Букмарки:
del.icio.us/Monten/web2.0
Legacy hit count
1264
Legacy blog alias
11309
Legacy friendly alias
Блогове-за-съвременните-интернет-тенденции
Интернет
Програмиране
Софтуер

Comments

By veselin , 13 February 2007
От доста време си мислех нещо, което много ме вълнува. Даже бях писал веднъж в блога за това.
Идеята ми беше, че може да има програма в личния телефон, която да позволява да се блогва в него по всяко време.
Например - правиш няколко снимки, вмъкваш текст, може и някое филмче, и си запаметяваш статиите в телефона. После, активирайки си bluetooth-а, даваш възможност на всички, които са около теб и искат да прочетат какво си написал, да изтеглят, или да видят статиите ти.
В същото време, пътувайки си във влака например, да можеш да сканираш кой какво е публикувал и оставил достъпно.
Та днес наи-накрая се престраших да го обсъдя с шефа ми, но не щеш ли, се оказа, че някой е открил топлата вода преди мен.
Ето и за какво иде реч, вече реализирано и достъпно за поребителите на nokia : http://www.nokia.de/de/service/software/sensor/startseite/168744.html
Legacy hit count
929
Legacy blog alias
11255
Legacy friendly alias
За-топлата-вода-и-откривателите-й---
Приятели
Компютри
Интересни линкове
За BgLOG.net
Интернет
Невчесани мисли
Програмиране
Нещата от живота
Новини
Софтуер

Comments4

aragorn
aragorn преди 19 години и 2 месеца
Веско, мога да ти кажа две неща - или някой от Нокиа е уловил идеята ти и я е реализирал, или доста от разработчиците им четат редовно БгЛог и са я гепили :)
veselin
veselin преди 19 години и 2 месеца
Или някой е мислил по сйщия начин като мен по едно и сащо време, само че е имал реален план как да реализира идеята си :)
Няма лошо. Просто ми стана интересно днес, като научих, че това, което са направили се припокрива поне 95% с това, което си мислех аз. :)
Tosh
Tosh преди 19 години и 2 месеца
Яко! :) Според мен си... хмм.... мислил в правилна посока и сполучливо си съобразил, че наличните технологии могат да задоволят незадоволени новозараждащи се нужди на потребителите в неразработена, но с видим потенциал за растеж, пазарна ниша... ;)





By PetarAtanasov , 13 December 2006

След като се отвратих до точката на пълно пресищане от кавгите по отношение на "бедните учители", след като видях, че няма начин да се надмогнат безмислените кавги, реших просто да изместя фокуса от ямата на спора.

На кратко:
От известно време се занимавам с Moodle - най-разпространената система с отворен код в света. Добра, лоша - предмет на друг разговор е това.

Каква беше изненадата ми, когато разбрах, че сме платили (НИЕ) 500 000 лева за създаването на Национален Образователен Портал базиран на система с отворен код - именно Moodle ?!?

Нека всеки който се чувства съпричастен вземе отношение - както и с каквото може. Благодарен ще съм дори и за морална подкрепа - обществото на мудларите в България е все още малко, набира инерция, търси съмишленици.

Преди да влезете във форумите на Moodle - натиснете бутона "Login as guest"

Поздрави,
Петър

Legacy hit count
2702
Legacy blog alias
10062
Legacy friendly alias
Нова-светлина
Компютри
Събития
Интернет
Линукс
Невчесани мисли
Програмиране
Нещата от живота
Софтуер
България

Comments18

rumenpnikolov
rumenpnikolov преди 19 години и 4 месеца
Бе не е лоша системата муудъл, ама май има най-много нужда от денги. Спонсори трябват. Аз като работих с нея, повечето хелпове не бяха преведени на български (и слава Богу, щото преведените не ставаха за нищо). Спомних си тогава старите времена, когато всички програми бяха крадени и нямаше ръководства. Е, ако това мине за морална подкрепа - моля, давам я.... с малко смесени чувства. Щото ако и тука се скараме с Таничка, много виновен ще се чувствам пред Петър!
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
Добре,
Радвам се когато всички сме заедно - хора сме ще се разберем, не е нужно да се караме, нито да викаме.

Нека водим дискусия, като разумни хора :) нали?

Аз Ви моля за извинение, казах доста думи в гнева си...

Сега нека всички погледнем над следнния факт - няма победители, няма победени - въпроса е да продължим с минимални загуби нататък.

Знаете за какво става въпрос - нека да повторя пак - става въпрос за децата, за това, че идното поколение се формира сега...

Просто нямаме право да пилеем времето си в кавги!

Рупани е смел мъж, направи решителна крачка напред - поведение достойно за уважение, нека не бъде единствения.

Да помислим заедно - какво можем да направим?

Нека открием разумна дискусия, в пъти по-посещавана и популярна от кавгите, от които никой не се нуждае.

Поздрави,
Петър
rumenpnikolov
rumenpnikolov преди 19 години и 4 месеца
Благодаря, Петре! Всъщност в последния си коментар по оная тема аз направих опит за предложение, което обаче не знам от кого ще бъде чуто. Много е общо всъщност то, но ако учители със съзнание, че правят нещо за децата, за родителите и за себе си седнат и поумуват, мисля, че ще съумеят да предложат разумни промени в законодателството по отношение на образователната система и мястото на учителя в нея.
А за обидите, които взаимно си отправяхме, наистина съжалявам, но се надявам, че като мъже сме се разбрали за тяхната стойност. Аз съм човек с остър език, но като се извинявам, а това правя в  момента, съм винаги искрен.

Поздрави!
Румен
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
ха-ха-ха
Радвам се и ти благодаря !
Също и аз - добре е, че се разбрахме....

Така, сега по същество:
Явно дебата започна  - нека фокусираме над това какво именно може да се промени.

Далеч съм от тезата, че трябва да пренесем скандала нататък. Нека видим с какво и как можем да решим проблемите, пред които сме изправени. Най-важното - нека систематизираме, за да намерим още привърженици.

Така заедно ще извадим колата от блатото.

И нека не гледаме повече назад :)

Поздрави,
Петър
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
Моето отношение по въпроса с Националния Образователен Портал.

Поздрави,
Петър
entusiast
entusiast преди 19 години и 4 месеца
Без скандал и медии нищо няма да стане. Бахти 500 000 ги нямат за нищо наште министря!
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
Да така е. Не ги защитавам безцелно -изобщо не ги защитавам- помислете какво ще спечелим от скандал - кавги на национално ниво, прах и мъгла.

Най-много някой да излети от някое кресло !?! И ?

Още по-лошо - ще се появи друга акула, друго зло, нови пари ще се откраднат..

А колата си стои в блатото.

Нека излезем с концепция - ВИЕ признайте проблемите - нека ЗАЕДНО ги решим. Иначе приказката ще се повтори на още един рунд !

Аз имам мнение по отношение на реализацията, но без педагози, без подкрепа - една птичка пролет не прави..

А подкрепата е важна - подчертавам отново - дори моралната подкрепа, даже именно това е най-важното!

Един човек доказа днес това по безспорен начин ;)

Поздрави,
Петър
sestri4ka
sestri4ka преди 19 години и 4 месеца
Ако са дали на някой като мен да ги прави - верно най-малко
500 000 ще са - щот хал хабер си нямам от тия работи. Представяте ли си какъв напън ша падне....

Няма какво да си признаваме. Прави се комитет по решаването на проблема и комитет по сгащване на облажените и става работата.

Ето на! и аз се изказах.
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
Супер идея сестричке !
След като изчистим концепцията - остава да се организираме...

Постепенно идеята се избистря :)

Поздрави,
Петър
GeorgeAtha
GeorgeAtha преди 19 години и 4 месеца
Петьо, Румене и другите ..

Нищо няма да направите, хора! Нищо! Документално всичко е изпипано. Парите са прибрани законно, по законен начин. На вас това ви прави впечатление, защото знаете , че това няма как да струва 500К в БГ, но на документи всичко е наред , момчета и момичета!

Къде са медиите, които да отразят това? лижат задници някъде? да бяха ремонтирали 250 училища с по 2К всяко... ама не!

Какво сме седнали само и си приказваме? Времето в Автобусите щяло да се плаща, учителите получавали 280 лева и ако не си платиш на докторите - заминал си! Що ходите да гласувате бре?

1700 човека са регистрирани тука, няма ли журналисти? няма ли хора дето да попитат на правилното място, кое гадно и подкупно копеле (или копелета) разреши да се похарчат 500К за уебсайт дето и 20К не струва ... ? Ей затова на нашия казан няма дяволи - защото ние себе си не уважаваме. Затова и хората в БГ са намусени, сърдити и недоволни.. и курвалука е стратегия, политика и доктрина, пример за подражание ...

Как и кого да подкрепя морално (или по какъвто и да е друг начин) тука за тази кражба?
mileneva
mileneva преди 19 години и 4 месеца
Най-лошото е, не толкова, че са дадени 500 000 или колкота там са дадени, а че резултатът въобще не е това, което трява да бъде.
rumenpnikolov
rumenpnikolov преди 19 години и 4 месеца
вижте това. Не знам вече, кой трябва да повдигне въпроса. Трябва да е някаква организация. Трябва да се поставят ясни и недвусмислени искания за разрешаване на съществуващите в момента противоречия в образователната система. Противоречия, които настоящото законодателство и правилници и уредби не могат да разрешат. Трябва да се намери някаква трибуна, от която исканията да бъдат чути. Хора, като Куйн Блъндър могат да придадат по-голяма конкретност на тази борба за промяна на образователната система. Приканвам ги да коментират тук, или ако е по-удобно, да го направят в нейния пост, който съм посочил по-горе. Няма значение, къде ще се оформи дискусията. Важното е да се конкретизират нещата и да се види някакъв проблясък в тъмнината.
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
хмм - все се надявах темата да се разгори по подобен начин на тази със заплатите - и така да стои на първа страница на сайта... това би било чудесно начало, още повече, че няколкото идеи нахвърляни тука - започнаха да се материализират във бг форума на мудъл.

Де факто - няма значение къде, но е добре темата да на достатъчно видно място - може би като пряк резултат от моралната подкепа на хората ангажирани с това :)

Поздрави,
Петър
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
Здрасти Жоре,

да - то е ясно, че нещата са документално изпипани, префинени и прецизирани.

Но аз се надявам, че като проблема добие гласност - все ще се намери пробойна в корпуса на гемията - по аналогичен начин с проблемите в web-a - един минимален пропуск - разчовъркан от много  потребители  (достатъчно на брой ;)),  погледнат от неочаквни  ъгли - придобива неочаквани форми....

Аз съм developer  - не мога да мисля над правни казуси - не ми е работа - за тая цел има прависти  - но механизма на бъговете - бачка навсякъде - нали ? :)

За момента страшно се кефя на сърча на гугъл за prosveta.eu
(с "национален образователен портал" - ранка все още е на 5-6 място)

В резултата можете да се убедите сами.

Дори и такъв "безшумен" бойкот е форма на протест - щото честно казано ми се драйфа като гледам новини и слушам радио - море от лъжи и простащина.

Така поне - някъде,някое хитро хлапе - може поне да види нещо, нещо да го накара да се замисли - да го извади от транса на официалната догма.

Поздрави,
Петър
queen_blunder
queen_blunder преди 19 години и 4 месеца
М-м-мирише ми на голяма далаверка с този образователен портал. От една страна се плащат 500 000 лева за платформа, която е безплатна (за първи път чувам за нея, не съм запозната), защото лицензът й е за отворен код, а от друга – са дадени близо 600 000 лева за качване на електронно съдържание. Търгът е проведен на тъмно, а целият проект като реализация е обвит в мъгла от неясноти.

Така – на този етап аз мога да популяризирам информацията и по този повод качих статията на Даниел Денев. От нея всъщност става ясно какъв е проблемът.

Terkoto
Terkoto преди 19 години и 4 месеца
Много, много благодаря! Общественото мнение по даден въпрос е това което в днешно време е заменило революциите. Проблемите са много и комплексни, при това не само в образованието (в частност електронното). Тези които на този етап са скептични, и останалите "творящи такива абсурди", ще е добре първо много внимателно да видят какво точно си имат насреща... Нито ще оставим нещата да утихнат (всъщност ние сега започнахме), нито ще спрем до тук, нито ще се ограничим само до България, що се касае промени в законодателството и преследване на подобни "портали към абсурда" Денев
queen_blunder
queen_blunder преди 19 години и 4 месеца
Моля да ни осветлите малко повече по въпроса ето тук:
PetarAtanasov
PetarAtanasov преди 19 години и 4 месеца
Може ли отново линк-а, защото този не работи нещо :)

Поздрави,
Петър
By veselin , 22 April 2006
Започват ми лабораториите и екпериментите. Направо не ми се мисли този семестър. Предния нямаше нищо задължително, но този ме чакат около 20 експеримента, на които задължително трябва да присъствам, да се подготвя, и да се справя с тях. И две от дисциплините са си на немски, което допълнително ме стресира. Досега на английски ги закърпвах нещата, ама сега.... голяма каша ще е. А и на работа не знам докога ще се задържа и не ми е ясно, дали изобщо ще имам възможност да присъствам, или ще трябва да прекъсна нещата по средата. Сега си работя от 16:00 до 20:00 и това ми позволява да ходя и на лекции, ама не знам докога ще имат нужда от мен, защото има 2ма души, дето са си взели отпуска за момента и се очаква да се завърнат. И ако ще махат някой, то това може би ще съм аз. Дано не стане така, но да видим.
А, иначе, лабораториите са ми по Fundamentals of Software Engineering 1(на немски), Microwave and RF Technology (на английски) и Logical Design of Digital Systems (пак на немски).
Сега си прегледах задачата по Software Engineering, която ще е за този семестър и определено ми се струва интересна. Но, да ти е интересно нещо и да се справиш с него са две отделни неща. Доколкото разбирам, ще трябва и да се програмира на Visual C, а аз нямам почти никаква представа от програмиране, освен от Fundamentals of Computer Engineering 2, което карахме миналия семестър. Но там нещата бяха много бегло нахвърляни и даваха примери с JAVA. А на Основи на Програмирането, където е имало и С не можах да присъствам миналия семестър, пак заради работата...
Абе, голяма каша, но ми се прищя да ви се жалвам малко, пък дано си наредя и аз мислите в главата и си структурирам някакъв план на действие. И тъй като знам, че тук има доста хора, които се занимават с програмиране, ще пусна семестриалната задача, в общия и вариант, ако някой се интересува да види за какво иде реч. (само че ще дам версията на английски) :)
Пък си запазвам правото, ако имам трудности, да се обърна занапред и за малко помощ от вас, в случай, че можете да дадете съвет за нещо, или да помогнете.
Ето я и задачата (Software Engineering), която ще решаваме на части в експериментите:

Prof. Dr.-Ing. A. Hunger
Practical Training
Software Engineering
Summer Semester 2006
Documentation on Practical Training in Software Engineering
Contents
1. Task
2. Expected Intermediate Results
3. Bibliography
1. Task
Development and Implementation of an Elevator System
1.1 Task Description
The task comprises the specification, design and implementation of an elevator system for a high-rise building. Three elevators are to carry passengers between ten floors. The software must process all user requests, carry out certain controls in individual elevators and finally issue all commands to the drive motors located in the individual shafts. Furthermore, a facility for visual control of the system during operation must be developed. For this purpose, it is necessary to find an appropriate means of visual simulation and presentation of the system in operation.
The control system will chiefly be responsible for the efficient planning and co-ordination of the elevators' jobs. For instance, should someone press the down button on the fourth floor, the first elevator to reach the fourth floor on its current downward journey would have to stop.
The same call could also be answered by taking an inactive elevator into operation or one that had completed its last journey by reaching its final destination.
Should an elevator have neither passengers aboard nor a job to complete, it must be parked in a pre-determined idling position. When in use, an elevator must only be capable of changing its direction of travel once all passengers have reached their chosen destination in this particular direction. The activated destination buttons (in the elevators) and call buttons (on the floors) must therefore form the basis of system control. So if a passenger boards an empty elevator on the ground floor (floor number 1) and enters the 4th, 9th and 10th floors as destinations, the elevator must stop on all three floors even if the passenger gets out on the 4th floor and no one takes his place.
Every elevator must be equipped with a safety weighing mechanism to detect loads exceeding 350 kg (five persons), sound a warning alarm and inhibit further movement of the elevator until the excess weight has been removed.

The functions of the several control elements are described in more detail below.
Destination Buttons. Every elevator must have a row of destination buttons that must illuminate in confirmation when pressed. As soon as a destination has been reached, the door must open to let passengers out. Following that, the door must close again and the destination button of the floor in question must go out.
Location Displays. Illuminated location displays installed both in the elevators themselves as well as above the elevator doors on each floor must indicate where the elevators are. The respective displays in the elevator must go out again when an elevator leaves the floor.
Call Buttons. Two call buttons are installed on each floor, ("up" and "down"). The ground and 10th floors only need one button each ("up" and "down", respectively). While it must be possible to call an elevator from each floor by pressing a call button, it will not be possible to choose any specific one of the three elevators. It will much rather be the task of the control program to decide which elevator will be instructed to answer the transportation call. When pressed, call buttons must illuminate in confirmation. This illumination must remain active until an elevator has reached the floor the call came from.
When not in use, the individual elevators must either be parked on the ground, the 5th or the 10th floors. Once an elevator has completed all its jobs, it must travel to the nearest available parking position, whereby each idling position may only be occupied by one elevator.
Apart from these job-planning tasks, the control program must take consideration of several special conditions: the elevators must defer the completion of all job instructions issued by the control system while the doors are open. The elevator cars must each be equipped with a "Door Open" button with which passengers can actively override the closing mechanism and keep the door open for longer than normal. Furthermore, the elevators must ignore stop signals when they are less than 20 cm from reaching the floor. "Alarm" buttons in all three elevators must enable passengers to stop the elevators

and open the doors on the next floor, irrespective of control-system instructions. Pressing the "Alarm" button must also produce an acoustic signal. The list of all queued transport orders for this elevator has to be deleted.
An assumed speed of 4 m/s will form the basis of determining the location of the elevators. Opening and closing the doors must each take 3 seconds; the doors must stay open for at least 10 seconds. The floors are all 3.5 m apart. (Acceleration and deceleration will not be taken into consideration.)
During implementation, all buttons must be reproduced by suitable keyboard programming. The status of the entire system must be produced as a visual screen display, whereby any changes to system status must be indicated as quickly as possible.

1.2 Task Components
The just described task has to be solved by dividing in partial task.
1.2.1 Requirement Specification
The supplier of a software has to make a requirement specification in order to receive a development order. In the requirement specification it is precisely described the extend of the service and the responsibilities.
1.2.2 Design Method
Subject of this practical lessons is the design method of ‘Ward & Mellor’. Basis for the designing system is the context diagram which has to improve by the following steps using Top-down-design.
Essential Model
The Essential Model is the minimal and complete description of the functional system which is regardless of whether the implementation. It consist of Environment model and Behavioral model.
1.2.2.1 Environment Model
          • Context Diagram
          • Event, Control, and Data table
          • Data dictionary
          • Information model
 

1.2.2.2 Behavioral Model
          • Transformation Diagram
          • State-Transition Diagram
          • Extended Control, Event, and Data table
 

1.2.3 Implementation Model
The Implementation model is the expansion of the Essential model to the particular and technological conditions. It subdivides in the following parts.
Processor Model

This model contains the division of the Environment model. The processes and data transformations are divided up to the available processors.
Task Model
This model describes the partition of the several tasks of each processor and defines the interfaces.
Module Model
This model depicts the several modules and their relations between each other. The information flows within the procedures get transparent.
1.2.4 Specification and Production Sheet
A detail list of all components is demanded which are necessary for the implementation. This covers all data formats, functions, and modules. The several modules have to mark off and their responsibilities have to be defined. A schedule has to be set up for the implementation.
1.2.5 Executable Program
By means of the method of ‘Ward & Mellor’ the developed program has to be implemented using ADA Programming Language.
The prerequisite for passing the practical lessons is the independently designed and executable program.

2. Intermediate Results and Attendance Sheet
Name: .........................................................................................................................
First Name: ...............................................................................................................
Matrikel Nr. (Register No.): ....................................................................................
Datum
No.
Contents
Intermediate Result
Attendance Certificate
accept
24.04.2006
1
Problem definition, requirement specification (Erstellung des Pflichtenheftes)
Having printed/copied, read and understood the task
------
8.05.2006
2
Design of the Software as a System
Requirement specifications
15.05.2006
3
Design (Environmental Model)
Context diagram data dictionary
22.05.2006
4
Design (Behavioral Model)
Transformation diagrams
29.05.2006
5
Draft of implementation model
Behavioral model
12.06.2006
6
Specification of data formats, functions and modules. Distribution of tasks within the groups
Implementation model
19.06.2006
7
Implementation of partial tasks
Specifications and production sheet
26.06.2006
8
Implementation of partial tasks
Compiled moduls
3.07.2006
9
Integration, testing and documentation
10.07.2006
10
Integration, testing and documentation
Executable program incl. documentation, demonstration
 


Recommended Websites for learning ADA:
http://www.adahome.com/Tutorials/Lovelace/lovelace.htm
A very good ADA tutorial with lots of examples. At the end of each section there are comprehension questions to see if one has understood what was taught in each section.
 

Legacy hit count
1475
Legacy blog alias
6149
Legacy friendly alias
The-Labs-begin--малко-да-се-жалвам-
Ежедневие
Компютри
Интернет
Програмиране
Софтуер

Comments3

Shogun
Shogun преди 20 години
Веско, мога да ти предложа за съжаление само морална подкрепа, но затова пък е незабавна и изобилна.

Възхищава ме подходът ти да се изправиш челно срещу проблема и така да го пребориш.

Желая ти късмет за работата, а в лошия сценарий - все ще има друг вариант, макар и не веднага.

Успех!Smile
veselin
veselin преди 20 години
Нели, моралната ти подкрепа значи много за мен! Аз, не че съм искал и в момента някаква друга, но ми се прищя да споделя и да си структурирам нещата за себе си най-вече. А така попрочетох и задачата още веднъж.
А, иначе, съм много мотивиран в момента. И някак знам, че ще се справя с нещата. Такова усещане имам и гледам така да се настройвам, за да ми е по-спокойно. Искам и да завърша по-бързо, че сега след 2 семестъра семестриалните такси скачат с по 500 евро за всички (не само за новодошли) и ще стане много трудно.
А, иначе лабораториите започнаха днес и първата мина добре. Даже ми беше много интересно. Проектът започва с направата на нещо като договор между двете страни (тези, които ще правим софтуера за асансьорите и уни-то) Това, разбира се е ала бала, но придава още по-реален вид на задачата. В група съм с един камерунец и една китайка, която намирам за много готина мадама (дано не се разсейвам много :)
Та така. Ако не друго, поне ми е интересно! :)

veselin
veselin преди 20 години
Първата част от задачата завърши. Остават още девет. :) Идеята беше да се направи нещо като договор между двете страни, в който да се уточни какво се изисква от нас, като дизайнери на софтуера, и университета - като потребител. Беше си бая писане и обмисляне, но се справихме някак. Като цяло всичко ни се представя от уни-то толкова реално, че направо не виждам никаква разлика от това, което правим в момента, и това, което би ми се наложило да правя, ако ще ми платят за него, което внася допълнителен импулс. Тъй като вече започнах темата и на някой може да му е интересно да следи по какъв начин се развива една такава задача, смятам да пускам като коментари следствията от това, което сме извършили.

1 task - Specifications:

Project specifications on the elevator system design and implementation for a high-rise building
 

 

Version 1.1
25.04.2006
 

 

Presented by:
 

Group 10
Chelsea, Kinsley and Veselin
 

 

 

Content
 

1.  Introduction
2.  The Task
3.  Task Analysis
4.  Feasibility Study of the Task
5.  Specifiction Validity
6.  Project Organisation
7.  Phase Plan
8.  Proejct Supervision
9.  Agreements
 

 

 

 

1. Introduction
 

Customer:  University of Duisburg Essen
Project Contractor:  Team Group 10
 

This project is to design and implement an elevator control system to operate 3 independent individual elevators which will transport passengers and goods within total weight of 350kg to different floors of a 10 floor building as requested.
 

2. The Task
2.1 Formal task description
The elevator control system has to operate 3 independent individual elevators of a 10 floor building efficiently.
- It has to include the activated destination buttons (in the
  elevators) and call buttons (on the floors) as the system
  control basis.
- It has to be able to process all user requests, carry out certain controls in individual elevators and finally issue all commands to the drive motors located in the individual shafts.
- It has a facility for visual control of the system during operation.
- It will chiefly be responsible for the efficient planning and coordination of the elevators’ jobs;
  --- The nearest elevator answers the call, if it is moving
       towards the same direction as the requested direction;
  --- Or, the inactive elevator answers the call;
  --- Or, the elevator that had completed its journey by
       reaching its final destination answers the call.
- It has to perform parking operation to the elevator once the
  elevator has neither passengers aboard nor a job to complete.
  The initial parking positions for the 3 individual elevators are 1st,
  5thand 10th floor respectively.
- It allows the elevator to change the travelling direction only
  when the elevator has accomplished all its current tasks.
- It has to inhibit further movement of the elevator and sound
  a warning alarm once the weighing mechanism has detected
  loads exceeding 350kg (5 persons) untill the excess weight has
  been removed.    
 
It also has to incorporate a visual control to inform the users about the current state of the elevator.
The elevator actions must be controlled by pressing buttons. When not busy, the elevator has to be parked on the ground, 5th or 10th floor.
Every elevator must be equipped with a safety weighing mechanism to detect loads exceeding max load 350kg. (5 persons)
It must have a sound warning alarm.
It must inhibit further movement for weights greater than 350kg, until excess weight is removed.
2.2 Limitations and conditions
2.2.1          Submission Deadline of the project : 17.07.2006
 

2.2.2          The factors which have to be taken into account when developing the system include:
-         Power supply and consumption of the system
-         Financial consideration
 

2.2.3          For the response duration reuired for the system, we have referred to the technical data provided in the task description as
-         Travelling speed of the elevator is 4m/s;
-         Opening and closing the doors each takes 3 seconds;
-         Doors must stay open for at least 10 seconds;
-         Floors are all 3.5m apart and,
-         we added an extra ‘Door Closing’ button so if this button is been pressed, the door will stay open as y seconds where y is between 2s and 10s.
Thus we evaluated a function that calculates how quickly does the system have to respond to requests:
  Total time needed t [s]= (3.5/4)[s] ∙x + 3[s] + y[s]
               Where,
                      x: number of floors needed to travel
                      y: door closing time variable, 2[s] ≤ y ≥ 10[s]
 

2.2.4          Considering what parts of the system are already in place and do not need to be developed by the contractor, the following specific details might arise:
-         All the civil constructions and mechanical parts eg. all the hardware in the system are supposed to be in working conditions;
-         All the electrical circuits design and connections are supposed to be in working conditions.
 

2.2.5          Involvement of other groups and their tasks are:
-         Electrical and mechanical engineers will be responsible for electrical circuits and hardware design.
-         Software used to design and implement the elevator system will be provided by the University of Duisburg Essen.
 

2.3 Specification of the Interfaces
2.3.1          Ways of communication between system and users are:
-         All the buttons that allow the users to input commands to the system and produce the alarm sound;
-         All the displays that show to users the response status from the system.
 

2.3.2          Signals which the system have to react include:
-         The signals sent by users through all the buttons;
-         The signal sent by the weight mechanism which detects whether the elevator is overloaded or not.
 

2.3.3          Signals which the system have to create include:
-         All the display signals that indicates current status of the elevator system;
-         Once the weight mechanism detects the overloading in the elevator and sent the signal to the system, the system will create alarm signals eg. Acoustic warning alarm and control movement of the elevator.
 

 

3. Task Analysis
3.1 Important anticipated problems
3.1.1          The available hardware is supposed to be able to cope with the task, eg. mechanical and electrical wise.
 

3.1.2          It is possible that the system is overloaded, eg. power failure or weight exceeding. Thus we need to consider the individual possible cases and back-up system reactions:
-         If the elevator has exceeded the max. allowable weight (350kg), the system will send an alarm signal and no further movement of the elevator will be executed until the excess weight has been removed;
-         If the system experiences a power failure or in case of fire, it will activate the back-up power system and take the elevator to the nearest floor in the same direction of the current task, if any.
 

 

 

 

 

3.2 External influences
3.3.2          Types of physical influences the system have to cope/deal with are:
-          Heat allergic;
-          High humility or water;
-          Electromagnetic radiations, eg. from mobile phones.
-          Overloading.
 

3.3.2          The system operating time has to lie within the given range by the function of respond time t. It is although not immediate as delay of electronic components is taken into account.
 

3.3.3          The system has to stay permanently online.

3.3.4          The system operation has to be monitored so that in case of accidents users can be easily rescued and in case of system failures it can be immediately detected and repaired.
 

 

 

 

3.3 Desired situation, behaviour in an event of failure/trouble
 

3.3.1          Some unforeseeable events might occur and the system is required to react respectively:
-         Abbrupt power failure:
-backup power system available to complete present running tasks;
      - self initialisation of system incase of power return;
      - redlight to serve as a warning for users.
-         Fire accendents:
-         System shutdown after max temperature detection;
-         redlight to serve as a warning for users.
 

3.3.2          Once the major power supply has been interrupted, the system must use the backup power system as for emergency cases.
 

3.3.3          The system is allowed to crash but is must reboot in case of crash and will follow the emergency operations.
 

3.3.4          It is assumed that the designers/developers of the system are able to modify the system. Simple language and symbols (for buttons) will be used so that users can understand.
 

3.3.5          Errors that the user might make when using the system will be taken into consideration include:
-          Pressing the up and down buttons at the same time when calling for an elevator;
-         Pressing close and open doors buttons at the same tme.
 

 

 

4. Feasibility Study of the Task
4.1 Organisational/Economical aspects
4.1.1          The availability of  our experienced  staff and necessary software makes it possible for the task to be accomplished.
 

4.1.2          The hours needed for the development please refer to the development phase plan.
 

4.1.3          The number of people needed to complete the task on time is enough.
 

 

4.2 Technical aspects
4.2.1          The available hardware is able to accomplish the task.
4.2.2          Since the hardware is enough, it is not necessary to purchase new hardware.
 

 
 

 

 

5. Specification Validity
5.1 If questions arised, please contact: Group 10
Name
Email
Kinsley, Enowbi
chelsea.jiank(a)gmail.com
Veselin, Ivanov
veselini(a)gmail.com
Chelsea, Jiang
chelsea.jiank(a)gmail.com
 

5.2 Possible changes
-         Possible mechanical and electrical hardware changes are entitled and authorised to mechanical and electrical engineer teams.
-         Possible task requirements changes are entitled and authorised to clients.
-         Possible design/demonstration changes are entitled and authorised to group 10.
 

 

 

6. Project Organisation
All the tasks will follow the phase plan and will be compeleted as teamwork of the group 10.
7. Phase Plan
Datum
No
Contents
Intermediate
Results
24.04.2006
1
Problem definition,requirement specification(Erstellung des Pflichtenheftes
Having printed/copied,read and understood the task
08.05.2006
2
Design of the software as a system
Requirement specifications
15.05.2006
3
Design(environmental model)
Content diagram data dictionary
22.05.2006
4
Design(Behavioral model)
Transformation diagrams
29.05.2006
5
Draft of implementation model
Behavioral model
12.06.2006
6
Specification of data formazs,functions and modules.Destribution of tasks within the Groups
Implementation model
19.06.2006
7
Implementation of partial tasks
Specifications and production sheet
26.06.2006
8
Implementation of partial tasks
Compiled moduls
03.07.2006
9
Integration, testing and documentation
 

10.07.2006
10
Integration, testing and documentation
Execution program incl.documentation, demonstration
 

 

8. Project Supervision
-         Time monitoring: It has to be checked on a weekly basis
-         The group has to report to the supervisor incharge
 

9. Agreements
-         Documentation of the development process will be documented in a way that after finishing each required phase milestone [ref. ‘Phase plan’. Pg 13], the particially finished task will be presented by Group 10 to the supervisor untill the task has been fully accomplished.
-         Training of users will not be included in developer’s task, but system maintenance service will be provided together by the contractor and developer if within warranty.
By micromax , 19 February 2006

Часовници цъкат, щрака стрелката,
а Пешо съкрушен до компа стои.
Той няма да я види, отиде си вече,
заключена зад виртуални врати...

Първо по 'mIRC'a, после по мейла,
стъпка по стъпка опознаха се те
и всичко беше тъй хубаво и просто,
докато онзи ужасен вирус дойде-

Пореден E-Mail ще получава тя,
с subject 'I LOVE YOU' u attachment 'vbs',
но той бе от Пешо и набързо го отвори,
без да сканира с 'Secure-F'.

И белята стана-бацилът ужасен,
пароли веднага започна да краде,
да скрива mp3'та и адресна книга да чете,
а Пешо горкият застанал зад компа,
се чуди как от вируса да се отърве.

И още не съвзел се от това-
и ето още една беля:
'GSM'а му звъни,
а тя отсреща му крещи,
че как направил е така
и вируса от компа изпусна,
и че ще си намери нов,
net-аджия за виртуалната любов.

Ето как приключи
отдавна една любов виртуална.
И ако 'PC WORLD' Пешо би чел,
би сканирал въпросния E-Mail,
И може би и сега той и тя,
биха си писали кибер-писма.

 

=============================================

Да ме прощава конкуренцията. Едно време бях писал едно писмо до това списание и в него включих въпросното стихотворение. Те естествено го побликуваха. Бях много щастлив. А иначе сигурно съм бил 10-11 клас като съм го писал. Преди 4-5 години.....Еееххх к'ви времена бяха.....

Legacy hit count
1119
Legacy blog alias
4721
Legacy friendly alias
Модерна-Любов
Любов
Забавление
Литература
Програмиране
Поезия

Comments3

Eowyn
Eowyn преди 20 години и 2 месеца
Ох, голям смях :) Още повече, че и аз съм "жертва" на модерната нет-либофф...Само дето не успях да прихвана вирусTongue out
Shogun
Shogun преди 20 години и 2 месеца
Къде се продават виртуални презервативи? ;)
Eowyn
Eowyn преди 20 години и 2 месеца
във виртуалната аптека сигурно ;)) най-разпространените виртуални  презервативи дали са марка Нортън?